1. 程式人生 > >資料結構Java版 多項式相加(簽到題)

資料結構Java版 多項式相加(簽到題)

題目描述

一條單鏈表可以表示一個一元多項式,每個節點包含三個域:指數、係數和後繼節點(指標或引用)。

表示多項式3X4-6X2+5X-10的單鏈表如圖所示。給定兩個多項式,實現兩個多項式相加演算法。

 

輸入

第一行輸入包含兩個整數m,n

後續為m行和n行資料

m,n分別代表兩個多項式的項數

後續每一行代表多項式的項,包含a,b兩個資料,表示該項的係數和指數。

 

輸出

從較高指數到較低指數,依次輸出求得的和。

每行一項,格式與輸入相同,但無需輸出項數,係數為0的項也不輸出。

樣例輸入

2 3
1 2
1 1
2 2
1 1
2 0

樣例輸出

3 2
2 1
2 0

提示

來源

資料結構Java版

#include<iostream>
#include<string.h>
using namespace std;
int  main()
{
    int m,n;
    int a[101];
    memset(a,0,sizeof(a));
    cin>>m>>n;
    int c,d;
    for(int i=1;i<=m;i++)
    {
        cin>>c>>d;
        a[d]+=c;
    }
    for(int i=1;i<=n;i++)
    {
        cin>>c>>d;
        a[d]+=c;
    }
    for(int i=100;i>=0;i--)
    {
        if(a[i]!=0)
            cout<<a[i]<<' '<<i<<endl;
    }
}