标签:closed scanf display print cat 休息 indicator 规律 lin
前一段基本是做一天题目就休息一天到两天,假期里状态不大好,还感冒了几天...
乙级1010
1 #include<cstdio> 2 const int maxn=1010; 3 int main() 4 { 5 int n,e,a[maxn]={0},count=0;//n系数,e指数 6 while(scanf("%d%d",&n,&e)!=EOF) 7 { 8 a[e]=n; 9 } 10 a[0]=0; 11 for(int i=1;i<=1000;i++) 12 { 13 a[i-1]=a[i]*i; 14 if(a[i]!=0) 15 count++; 16 } 17 if(count==0) 18 printf("0 0"); 19 else 20 { 21 for(int i=1000;i>=0;i--) 22 { 23 if(a[i]!=0) 24 { 25 printf("%d %d",a[i],i); 26 count--; 27 if(count!=0) 28 printf(" "); 29 } 30 } 31 } 32 33 return 0; 34 }
初次接触枚举,省去了许多麻烦
甲级1002
题意:每个测试用例有两行,每行第一个数字表示多项式中非零项的个数,后面是先指数后系数的规律,最后输出多项式相加,格式和输入相同
思路:要注意到系数用double型,用一个数组表示系数和指数的关系
1 #include<cstdio> 2 const int maxn=1111; 3 double p[maxn]={}; 4 int main() 5 { 6 int k,n,count=0; 7 double a; 8 scanf("%d",&k); 9 for(int i=0;i<k;i++) 10 { 11 scanf("%d %lf",&n,&a); 12 p[n]+=a; 13 } 14 scanf("%d",&k); 15 for(int i=0;i<k;i++) 16 { 17 scanf("%d %lf",&n,&a); 18 p[n]+=a; 19 } 20 for(int i=0;i<maxn;i++) 21 { 22 if(p[i]!=0) 23 count++; 24 } 25 printf("%d",count); 26 for(int i=maxn-1;i>=0;i--) 27 { 28 if(p[i]!=0) 29 printf(" %d %.1f",i,p[i]); 30 } 31 return 0; 32 }
标签:closed scanf display print cat 休息 indicator 规律 lin
原文地址:http://www.cnblogs.com/brucekun/p/6339764.html