每行第一个数表示本行有几项,每一项由两个整数表示,第一个数表示系数,第二个数表示次数。
输出:两个多项式之和,由空格隔开的一组整数表示即可。
样例:
输入:3 3 5 -2 1 4 0
4 2 3 -1 2 1 1 3 0
输出:3 5 2 3 -1 2 -1 1 7 0
#include <cstdio>
const int max_n = 1111;
int p[max_n] = {0};
int main()
{
int k, c;
int x;
scanf("%d", &k);
for(int i = 0; i < k; i++)
{
scanf("%d %d", &x, &c);
p[c] += x;
}
scanf("%d", &k);
for(int i = 0; i < k; i++)
{
scanf("%d%d", &x, &c);
p[c] += x;
}
for(int i = max_n - 1; i >= 0; i--)
{
if(p[i] != 0)
{
printf("%d %d ", p[i], i);
}
}
return 0;
}