pat乙级1061-1065

//1
#include<stdio.h>
int main(){
int m,n;
scanf("%d %d",&n,&m);
int a[m][2];
for(int i=0;i<m;i++)
scanf("%d",&a[i][0]);
for(int i=0;i<m;i++)
scanf("%d",&a[i][1]);
int t=0;
for(int i=0;i<n;i++){
int cnt=0;
for(int j=0;j<m;j++){
scanf("%d",&t);
if(t==a[j][1]){
cnt+=a[j][0];
}
}
printf("%d\n",cnt);
}
return 0;
}
//2
#include<stdio.h>
int fun(int t2,int t1){
return (t2==0?t1:fun(t2,t1%t2));
}
int main(){
int n1,n2,m1,m2,k;
scanf("%d/%d %d/%d %d",&n1,&m1,&n2,&m2,&k);
int a[k],t=0;
if(n1*m2>n2*m1) {
t=n1;
n1=n2;
n2=t;
t=m1;
m1=m2;
m2=t;
}
t=0;
for(int i=1;i<k;i++){
if((n1*k<i*m1)&&(n2*k>i*m2)&&fun(i,k)==1){
a[t++]=i;
}
}
for(int i=0;i<t;i++){
if(i!=0) printf(" ");
printf("%d/%d",a[i],k);
}
return 0;
}
//3
#include<stdio.h>
#include<math.h>
int main(){
int n;
scanf("%d",&n);
int a,b;
double c=0;
while(n--){
scanf("%d %d",&a,&b);
if(sqrt(a*a+b*b)>c)
c=sqrt(a*a+b*b);
}
printf("%.2lf",c);
return 0;
}
//4
#include<bits/stdc++.h>
using namespace std;
int fun(int a){
int t=0,s[6]={0};
while(a){
s[t++]=a%10;
a/=10;
}
int sum=0;
for(int i=0;i<t;i++)
sum+=s[i];
return sum;
}
int main(){
int n;
scanf("%d",&n);
int a[n],b[38]={0};
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(int i=0;i<n;i++)
b[fun(a[i])]=fun(a[i]);
int c[n],t=0;
for(int i=0;i<37;i++){
if(b[i]!=0)
c[t++]=b[i];
}
printf("%d\n",t);
for(int i=0;i<t;i++){
if(i!=0) printf(" ");
printf("%d",c[i]);
}
return 0;
}
//5
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m,s[100000];
scanf("%d",&n);
for(int i=0;i<100000;i++)
s[i]=-1;
int a,b;
while(n--){
scanf("%d %d",&a,&b);
s[a]=b;s[b]=a;
}
scanf("%d",&m);
int all[m],cnt=0;
for(int i=0;i<m;i++){
scanf("%d",&all[i]);
if(s[all[i]]==-1) {
cnt++;
s[all[i]]=-3;
}else{
s[all[i]]=-2;
}
}
for(int i=0;i<100000;i++){
if(s[i]>-1&&s[s[i]]==-2){
cnt++;
s[s[i]]=-3;
}
}
printf("%d\n",cnt);
for(int i=0;i<100000&&cnt>0;i++){
if(s[i]==-3){
printf("%05d",i);
if(cnt>1)
printf(" ");
cnt--;
}
}
return 0;
}

猜你喜欢

转载自www.cnblogs.com/suying/p/10432721.html