#include<cstdio>
struct Poly {
int exp;//指数
double cof;//系数
}poly[1001];//第一个多项式
double ans[2001]={0.0};//存放结果
int main() {
int n, m, number = 0;
scanf("%d", &n);//第一个多项式中非零系数的项数
for (int i = 0; i < n; i++) {
scanf("%d %lf", &poly[i].exp, &poly[i].cof);//第一个多项式的指数和系数
}
scanf("%d", &m);//第二个多项式中非零系数的项数
for (int i = 0; i < m; i++) {
int exp;
double cof;
scanf("%d %lf", &exp, &cof);
for (int j = 0; j < n; j++) {
ans[exp + poly[j].exp] += (cof * poly[j].cof);
}
}
for (int i = 0; i <= 2000; i++) {
if (ans[i] != 0.0) number++;//累计非零系数的项数
}
printf("%d", number);
for (int i = 2000; i >= 0; i--) {
if (ans[i] != 0.0) {
printf(" %d %.1f", i, ans[i]);
}
}
return 0;
}
1009 Product of Polynomials
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 传送门 https://www.patest.cn/contests/pat-a-practise/1009 题目...
- 1009 Product of Polynomials (25)(25 分) This time, you are...
- 题目: This time, you are supposed to find A×B where A and B...
- 1009与1002其实是不同操作的同一道题,因此算法上略有不同但思路大致相似,有了上次的教训,这道题进行的非常顺利...