PTA A+B for Polynomials

题意:给出两个多项式的指数和系数,求相加得到的多项式

解析:题目看起来不难【就是个人读题英文水平还待提高OTZ】,然后有几个坑点需要注意,一个是注意指数系数都是0的情况,比如一个多项式为fx = 0,再就是注意类似fx = 2x^3838+3x^2+3之类的这种情况,然后基本就没有其他问题了

#include<iostream>
#include<cmath>
#include<stack>
#include<cstring>
#include<cstdio>
using namespace std;
int main()
{
    int k,n;double a;
    double K[2000];int maxx = 0;
    memset(K,0,sizeof(K));
    int cnt = 0;
    for(int i = 0; i < 2; i ++)
    {
        cin >> k;

        for(int j = 0; j < k; j ++)
        {
            cin >> n >> a;
            K[n]+=a;
           // cout << "a=" << a << " kn = " << K[n] <<endl;
            if(n > maxx)maxx = n;
        }
    }
    for(int j = 0; j <= maxx; j ++)
    {
        if(K[j] != 0)cnt++;
    }
    cout << cnt;
    for(int i = maxx; i >= 0; i--)
    {
        if(K[i]!= 0)
        printf(" %d %.1lf",i,K[i]);
    }

    cout <<endl;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/sunshine_critical/article/details/84199782