本文主要是介绍浙大PAT (Advanced Level) Practise 1009 Product of Polynomials (25),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
/*本题与1002类似,只是将简单的两个数组相加,改为两个数组相乘,采用双循环可解,代码如下*/
#include <iostream>
using namespace std;int main()
{int K;while(cin>>K){double a[1001]={0},b[1001]={0},c[2001]={0}; //a[],b[]数组储存两个系数数组,c[]储存结果int n;for(int i=0;i<K;++i){cin>>n;cin>>a[n];}cin>>K;for(int i=0;i<K;++i){cin>>n;cin>>b[n];}for(int i=0;i<1001;++i) //双循环获得多项式相乘结果{for(int j=0;j<1001;++j){c[i+j]+=a[i]*b[j];}}int count=0;for(int i=0;i<2001;++i) //求多项式中的非零项数目if(c[i])++count; cout<<count;for(int i=2000;i>=0;--i)if(c[i])printf(" %d %.1lf",i,c[i]);cout<<endl;}return 0;
}
这篇关于浙大PAT (Advanced Level) Practise 1009 Product of Polynomials (25)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!