码迷,mamicode.com
首页 > 其他好文 > 详细

1009 Product of Polynomials

时间:2018-08-30 13:43:31      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:scanf   错误   ble   cst   clu   多项式   str   can   code   

题意:模拟多项式相乘

思路:略。有一个注意点,题目中说指数最大为1000,当两个多项式相乘后,指数最大就为2000,这一点不注意会出现段错误。

代码:

#include <cstdio>
const int N=2005;//注意N必须大于等于2000,而不能是1000
struct Term{
    double coe;//系数
    int exp;//指数
}a[100],b[100];

int main()
{
    //freopen("pat.txt","r",stdin);
    int ka,kb;
    scanf("%d",&ka);
    for(int i=0;i<ka;i++)
        scanf("%d%lf",&a[i].exp,&a[i].coe);
    scanf("%d",&kb);
    for(int i=0;i<kb;i++)
        scanf("%d%lf",&b[i].exp,&b[i].coe);
    double product[N]={0};//下标存放指数,对应的值代表系数
    for(int i=0;i<ka;i++){
        for(int j=0;j<kb;j++){
            int exp=a[i].exp+b[j].exp;
            double coe=a[i].coe*b[j].coe;
            product[exp]+=coe;
        }
    }
    int len=0;
    for(int i=0;i<N;i++){
        if(product[i]!=0) len++;
    }
    printf("%d",len);
    for(int i=N-1;i>=0;i--){
        if(product[i]!=0)
            printf(" %d %.1f",i,product[i]);
    }
    return 0;
}

 

1009 Product of Polynomials

标签:scanf   错误   ble   cst   clu   多项式   str   can   code   

原文地址:https://www.cnblogs.com/kkmjy/p/9559617.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!