02-线性结构2 一元多项式的乘法与加法运算(20 分)

来源:互联网 发布:ubuntu on windows 编辑:程序博客网 时间:2024/05/16 15:49

02-线性结构2 一元多项式的乘法与加法运算(20 分)

#include<stdio.h>#include<iostream>#include<algorithm>using namespace std; struct node{    int a,b;    }f1[1010];int f2[1010]={0}, f[2010]={0};int main(){    int n1,n2;    scanf("%d",&n1);    for(int i=1;i<=n1;i++)    {        scanf("%d%d",&f1[i].a,&f1[i].b);        f2[f1[i].b]+=f1[i].a;    }    scanf("%d",&n2);    for(int i=1;i<=n2;i++)    {        int a,b;        scanf("%d%d",&a,&b);        f2[b]+=a;           // add        for(int j=1;j<=n1;j++)        {            f[b+f1[j].b]+=(a*f1[j].a);  //mul        }     }    int first=1,haveput=0;    for(int i=2000;i>=0;i--)    {        if(f[i]!=0)        {            if(first==1)            {                printf("%d %d",f[i],i);                first=0;            }            else                printf(" %d %d",f[i],i);            haveput=1;        }    }    if(haveput==0)        printf("0 0");    printf("\n");    first=1;    haveput=0;    for(int i=1000;i>=0;i--)    {        if(f2[i]!=0)        {            if(first==1)            {                printf("%d %d",f2[i],i);                first=0;            }            else                printf(" %d %d",f2[i],i);            haveput=1;        }    }    if(haveput==0)        printf("0 0");    printf("\n");    return 0;}
阅读全文
0 0
原创粉丝点击