AcWing 1481. 多项式乘积
原题链接
简单
作者:
LizMurray
,
2021-02-17 16:07:14
,
所有人可见
,
阅读 342
#include <iostream>
using namespace std;
const int maxn=10010;
double a[maxn],b[maxn],c[maxn+maxn];//第一个多项式计入到a数组中
void input(double a[])//用函数输入两个多项式
{
int k;
cin>>k;
for(int i=0;i<k;i++)//输入多项式
{
int n;
double v;
cin>>n>>v;
a[n]=v;
}
}
int main() {
input(a);//输入第一个多项式
input(b);
//计算乘法
for(int i=0;i<maxn;i++)
{
for(int j=0;j<maxn;j++)
{
c[i+j]+=a[i]*b[j];//把计算结果存入到数组c中
}
}
int k=0;
for(int i=0;i<maxn+maxn;i++)
{
if(c[i])
{
k++;//计算多项式的项数
}
}
cout<<k;
for(int i=maxn+maxn-1;i>=0;i--)
{
if(c[i])
{
printf(" %d %.1f",i,c[i]);
}
}
return 0;
}