pat 1009

多项式乘法:
用一个数组储存相乘后的到的元素
使用double型的数组,下标表示指数,対应的值表示系数。

#include
#include

typedef struct{
    int expon;
    double coef;
}poly;

poly a[15],b[15];
double ans[2008];
int k1,k2,cnt=0;

void Input()
{
    scanf("%d",&k1);
    for(int i=0;iscanf("%d %lf",&a[i].expon,&a[i].coef);
    }
    scanf("%d",&k2);
    for(int i=0;iscanf("%d %lf",&b[i].expon,&b[i].coef);
    }
}

int main()
{
    Input();
    for(int i=0;ifor(int j=0;jfor(int i=0;i<2005;i++){
        if(fabs(ans[i])>0)
            cnt++;
    }
    printf("%d",cnt);
    for(int i=2000;i>=0;i--){
        if(fabs(ans[i])>0){
            printf(" %d %.1lf",i,ans[i]);
        }
    }

    printf("\n");
    return 0;
}









你可能感兴趣的:(PAT(A))