算法:多项式相乘

#include<bits/stdc++.h>
using namespace std;
int a[5][2], b[10][2], ans[25];
int main(){
	int n, m;
	cin >> n >> m;
    for(int i=0; i<n; i++)
        for(int j=0; j<2; j++)
        	cin >> a[i][j];
    for(int i=0; i<m; i++)
        for(int j=0; j<2; j++)
        	cin >> b[i][j];
    for(int i=0; i<n; i++)
        for(int j=0; j<m; j++){
        	ans[a[i][1]+b[j][1]] += (a[i][0]*b[j][0]);
		}
            
    for(int i=24; i>=0; i--){
		if(ans[i])
            cout << ans[i] << " " << i << endl;
    }
    return 0;
}

利用二维数组的a[i][0]表示项的系数、a[i][1]表示项的指数,然后进行巧妙计算。

发布了15 篇原创文章 · 获赞 10 · 访问量 216

猜你喜欢

转载自blog.csdn.net/qq_39053800/article/details/104234457