题目:
给出一个多项式,求这两个多项式的乘积
代码:
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn = 10010;
struct poly {
int e;
double x;
}poly[maxn];
int main() {
int n, m;
double ans[maxn] = {0};
cin >> n;
for (int i = 0; i < n; i++) {
cin >> poly[i].e >> poly[i].x;
}
cin >> m;
for (int i = 0; i < m; i++) {
int exp;
double cof;
cin >> exp >> cof;
for (int j = 0; j < n; j++) {
ans[poly[j].e + exp]+= poly[j].x * cof; //此处是+=而不是+
}
}
int cnt = 0;
for (int i = 0; i < maxn; i++) {
if (ans[i] != 0) cnt++;
}
cout << cnt;
for (int i = maxn - 1; i >= 0; i--) {
if (ans[i] != 0)
printf_s(" %d %.1f", i, ans[i]);
}
system("pause");
return 0;
}