1009 Product of Polynomials (25 分)

#include <iostream>
#include <stdio.h>

typedef struct Poly {
    int exp; //指数
    double cof; //系数 
}Poly;



int main(int argc, char *argv[]) {
    Poly poly[1001];
    double ans[2001];
    
    int n;
    scanf("%d", &n); //第一个多项式项数 
    for(int i=0; i<n; i++) {
        scanf("%d %lf", &poly[i].exp, &poly[i].cof);
    }
    
    int m;
    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);
        }
    }
    
    int count = 0;
    for(int i=0; i<=2000; i++) {
        if(ans[i] != 0.0) count++;
    }
    printf("%d", count);
    for(int i=2000; i>=0; i--) {
        if(ans[i] != 0.0) {
            printf(" %d %.1lf", i, ans[i]);
        }
    }
    
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容