1474. 多项式 A + B - AcWing题库
给定两个多项式 $A$和 $B$,计算 $A+B$ 的结果。
输入格式
其中,$K$ 表示多项式中非零项的数量,Ni 和 aNi 分别表示其中一个非零项的指数和系数。
输出格式
按照与输入相同的格式,输出 $A + B$的结果。
结果中的各项的系数均保留一位小数。
数据范围
[HTML_REMOVED]
输入样例:
2 1 2.4 0 3.2
2 2 1.5 1 0.5
输出样例:
3 2 1.5 1 2.9 0 3.2
定义一个a[1010]数组 a[i]表示 $a^i 系数和$
#include <iostream>
using namespace std;
const int N = 1010;//系数Ni最大1000
double a[N];
int k;
int main()
{
for(int i = 0; i < 2; i ++)//两次输入进行简化
{
cin >> k;
while(k --)
{
int n;
double v;
cin >> n >> v;
a[n] += v;
}
}
int t = 0;
for(int i = 0; i < 1010; i ++)//计算非零项的数量
{
if(a[i])
t ++;
}
cout << t;
for(int i = 1009; i >= 0; i --)
{
if(a[i])
printf(" %d %.1lf",i,a[i]);
}
}