PAT乙1010 一元多項式求導

2021-10-02 13:43:45 字數 805 閱讀 1146

設計函式求一元多項式的導數。(注:x​n​​(n為整數)的一階導數為nx​n−1​​。)

以指數遞降方式輸入多項式非零項係數和指數(絕對值均為不超過 1000 的整數)。數字間以空格分隔。

以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。注意「零多項式」的指數和係數都是 0,但是表示為0 0

3 4 -5 2 6 1 -2 0
12 3 -10 1 6 0
題目看起來比較容易,但是有坑,容易造成輸出的格式不符合要求,畢竟分值是25分了,沒坑就太容易了點。那麼我們分析一下這道題。

從輸入的角度來看,肯定不能用字串的方式進行儲存資料,建立乙個int型別的陣列即可,我這裡讀入用的是cin和cin.peek()函式進行判斷是否結束。

這題的大坑就在於0多項式以及輸出格式的問題上。如果輸入的樣例僅存在2個數,並且第二個數為0,那麼這個多項式就是乙個常數,且輸出的結果必為「0 0」。

除去上個問題,另外乙個問題是最後乙個數字後面不能有空格,常規操作是在執行完成任務後,判斷一下迴圈是否執行到了倒數第二個,如果不是,就多輸出乙個空格。但是這題的坑就在於,這一排的多項式,如果出現指數項為0時,可能會在末尾或者別的地方多輸出乙個空格的問題。

**實現起來很容易的,就十幾行**,這題的核心是格式的處理。

**:

#include #include using namespace std;

int main()

return 0;

}

PAT乙1010 一元多項式求導 25

設計函式求一元多項式的導數。注 xn n為整數 的一階導數為n xn 1。輸入格式 以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格式 以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。注意 零多項式 的指數...

PAT(乙) 1010 一元多項式求導 25

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 設計函式求一元多項式的導數。注 xn n為整數 的一階導數為n xn 1。輸入格式 以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格式 以與輸入...

PAT乙1010 一元多項式求導 25

題目在這裡 時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 設計函式求一元多項式的導數。注 xn n為整數 的一階導數為n xn 1。輸入格式 以指數遞降方式輸入多項式非零項係數和指數 絕對值均為不超過1000的整數 數字間以空格分隔。輸出格...