設計函式求一元多項式的導數。(注:xn(n為整數)的一階導數為n*xn-1。)
輸入格式:以指數遞降方式輸入多項式非零項係數和指數(絕對值均為不超過1000的整數)。數字間以空格分隔。
輸出格式:以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。注意「零多項式」的指數和係數都是0,但是表示為「0 0」。
輸入樣例:
3 4 -5 2 6 1 -2 0輸出樣例:
12 3 -10 1 6 0
——————
開始刷pat了。。。寒假的時候發誓三個月通關,結果只做了一題並且只通過乙個測試點。現在我又來嚴正起誓了(。・・)ノ,把半年前做的那道題目又做了一遍,發現了一些漏洞,然而還是有乙個測試點段錯誤,時因為我開了n個鍊錶的原因麼(:◎)≡
今天做了一道簡單的題目。
這真是一道很簡單的題目。隨手寫一些刷題日記吧。。
單純實現這道題的話還蠻簡單的,**量也很少,不需要糾結用什麼data structure了。我用的是結構體陣列,每個陣列元素包含兩個成員(係數、指數)
然而在提交**的時候還是遇到一些坑。
1. 輸出格式
零多項式不輸出,然後每個數之間要空格,最後不能多出乙個空格。最開始我是把第一項單獨揪出輸出,然後往後輸出的每一項之間都加乙個空格。但是忽略了第一項可能是零多項式不輸出。所以加了個flag標記什麼時候導數多項式輸出了第乙個非零多項式,只有當前輸出項不是導數多項式的第一項才需要加空格。
2. 零多項式
零多項式是不輸出的,但常數項要輸出「 常數 0 」,即要把指數0輸出。
3. 如果導數多項式不含非零多項式
如果導數為0時,並不是什麼都不輸出。最後這個點我想了好久。。因為一開始沒有看懂「 注意『零多項式』的指數和係數都是0,但是表示為『0 0』 」這句話的提示有什麼作用。。以為是輸入可能含有「 0 0 」要注意避開。。
------------------------------
附源**
#include #include typedef struct node poly;
struct node;
int main()
a = array[0].c;
x = array[0].e;
//因為第一項之前不需空格 單獨拿來輸出
if (x != 0 && a != 0)
i--;
for (int j = 1; j <= i; j++) }
if (flag == 0) //如果之前什麼都沒有 就只輸出0 0
printf("0 0");
system("pause");
return 0;
}
02 線性結構2 一元多項式求導 25
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 設計函式求一元多項式的導數。注 xn n為整數 的一階導數為n xn 1。輸入格式 以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格式 以與輸入...
02 線性結構2 一元多項式求導 25
設計函式求一元多項式的導數。注 xn n為整數 的一階導數為n xn 1。輸入格式 以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格式 以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。注意 零多項式 的指數...
一元多項式求導
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 設計函式求一元多項式的導數。輸入格式 以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格式 以與輸入相同的格式輸出導數多項式非零項的係數和指數。數...