題目內容:
乙個多項式可以表達為x的各次冪與係數乘積的和,比如:
現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。
程式要處理的冪最大為100。
輸入格式:
總共要輸入兩個多項式,每個多項式的輸入格式如下:
每行輸入兩個數字,第乙個表示冪次,第二個表示該冪次的係數,所有的係數都是整數。第一行一定是最高冪,最後一行一定是0次冪。
注意第一行和最後一行之間不一定按照冪次降低順序排列;如果某個冪次的係數為0,就不出現在輸入資料中了;0次冪的係數為0時還是會出現在輸入資料中。
輸出格式:
從最高冪開始依次降到0冪,如:
2x6+3x5+12x3-6x+20
注意其中的x是小寫字母x,而且所有的符號之間都沒有空格,如果某個冪的係數為0則不需要有那項。
輸入樣例:
6 25 3
3 12
1 60 20
6 25 3
2 12
1 60 20
輸出樣例:
4x6+6x5+12x3+12x2+12x+40
時間限制:500ms記憶體限制:32000kb
#include
int main(void)
scanf("%d %d",&a, &b);//逐一輸入資料構建
n[a]=b;
while(a!=0)
scanf("%d %d",&a, &b);
m[a]=b;
while(a!=0)
for(i=0;is[i]=n[i]+m[i]; // 得出可輸出的最終陣列 }
int ret=1;//作為判斷是否第一次輸出的工具
for(i=m-1;i>1;i--) // 在i>1這個範圍開始輸出 ,要考慮係數是否是1或-1情況
else
else
} }
if(s[i]==1||s[i]==-1)
else
ret=0; }
else
else
} }
} if(s[1]>1||s[1]
else if(s[1]
} else
else if(s[1]
} }
else if(s[1]==1||s[1]==-1)
else if(s[1]==-1)
ret=0; }
else
else if(s[1]==-1)
} }
if(s[0]>0||s[0]<0) //在i=0這個位置上輸出; 確保0也能夠輸出
else
else
} }
else
else
} return 0; }
多項式加法
題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 2x6 3x5 12x3 6x 20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,...
多項式加法
給定兩個多項式p x 與q x 通過鍊錶實現它們的加法。有若干組,每組有2個多項式。每組輸入時先輸入第1個多項式,再輸入第2個多項式。每組用若干對整數表示,依序每兩個相鄰的整數表示多項式的一項,分別是它的係數和冪。當輸入的冪為負數時,表示乙個多項式的結束。乙個多項式中各項的次序是隨機的。對每組中兩個...
多項式加法
題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 2x6 3x5 12x3 6x 20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,...