假設有一項數為n之多項式( 0 < n < 1000)
f(x) = A1xa1 + A2xa2 + A3xa3 + ... + Anxan
其中對於所有的 i , Ai 為整數, ai 為非負整數(可能重複)
並且 Ai 介於 -100 ~ 100, ai 介於 0 ~ 231 - 1
請將 f(x) 化簡成次方由小排到大的型式
範例一
f(x) = 3x2 + 1+ 5x123123 + x + x - 3x2 + 2x
最後簡化為
f(x) = 1 + 4x + 5x123123
範例二
f(x) = x2 + 0x10 + 0x0 - x2
最後簡化為
f(x) = 0
hint:
底下是 bubble sort 的 pseudocode, 會將n個元素的陣列A由小排到大
function bubblesort ( A, n ) {
var int i, j;
for i from n-1 downto 0 {
for j from 0 to i-1 {
if ( A[j] > A[j+1] ) {
swap( A[j], A[j+1] )
}
}
}
}
n
Ai ai
係數 次方
係數 次方
...
或
0
依據次方由小排到大, 若化簡結果為 f(x) = 0 則輸出 0
注意最後一行須換行