pat 1002 A+B for Polynomials

来源:互联网 发布:计算机存储数据原理 编辑:程序博客网 时间:2024/05/07 19:49

简单的多项式相加。用两个数组分别保存,找出最大的下标,逐项相加。

#include<iostream>using namespace std;const int num=1005;double a[num],b[num];int main(){int n,i,index,m;double val;int alen=-1,blen=-1,count=0;scanf("%d",&n);while(n--){scanf("%d%lf",&index,&val);a[index]=val;if(alen==-1)alen=index;}scanf("%d",&m);while(m--){scanf("%d%lf",&index,&val);b[index]=val;if(blen==-1)blen=index;}if(alen<blen)alen=blen;for(i=alen;i>=0;i--){a[i]+=b[i];if(a[i]!=0.0)count++;}printf("%d",count);for(i=alen;i>=0;i--){if(a[i]!=0.0)printf(" %d %.1lf",i,a[i]);}return 0;}


原创粉丝点击