洛谷P1067 多項式輸出 題解 模擬

2022-05-19 21:31:27 字數 834 閱讀 3283

解題思路:

我們從 \(a_n\) 遍歷到 \(a_0\),按照如下思路來進行模擬:

如果係數 \(a_i=0\),則第 \(i\) 項不用輸出任何資訊(即:不用進行接下來的判斷);

第乙個非零的係數 \(a_i\) 如果 \(\gt 0\),則不需要在前面加『+』,\(a_i\) 之後所有 \(\gt 0\) 的係數都有在前面加乙個『+』;

所有 \(\gt 0\) 的係數 \(a_i\) 都需要在前面加乙個負號;

如果 \(|a_i|=1\) 或者 \(i = 0\),則不用輸出 \(|a_i|\);否則,輸出 \(|a_i|\)(這裡 \(|x|\) 表示 \(x\) 的絕對值);

如果 \(i>1\),需要輸出x^i的格式;否則,如果 \(i=1\),只需要輸出x;否則(\(i=0\)),不需要輸出帶x的資訊。

按照這種思路,實現**如下:

#include using namespace std;

int n, a;

bool flag;

int main()

else

if (abs(a) > 1 || i == 0) cout << abs(a); // 如果|ai|>1或者i==0,需要輸出係數

if (i > 1) cout << "x^" << i; // 如果i>1,需要輸出x^i

else if (i == 1) cout << "x"; // 如果i==1,需要輸出x

// 否則,不需要輸出}}

return 0;

}

洛谷 P1067 多項式輸出

其中,aixi稱為 i 次項,ai 稱為 i 次項的係數。給出乙個一元多項式各項的次數和係數,請按照如下規定的格式要求輸出該多項式 多項式中自變數為 x,從左到右按照次數遞減順序給出多項式。多項式中只包含係數不為 0 的項。如果多項式 n 次項係數為正,則多項式開頭不出現 號,如果多項式 n 次項係...

洛谷 P1067 多項式輸出

題目大意 一元 n 次多項式可用如下的表示式表示 其中,aixi稱為 i 次項,ai 稱為 i 次項的係數。給出乙個一元多項式各項的次數和係數,請按照如下規定的格式要求輸出該多項式 多項式中自變數為 x,從左到右按照次數遞減順序給出多項式。多項式中只包含係數不為 0 的項。如果多項式 n 次項係數為...

洛谷 P1067 多項式輸出

p1067 多項式輸出 廢話就不多說了,這道題屬於基礎題。提交出錯主要是因為一些小細節不到位,這裡就不一一贅述了,直接上 吧!如下 include using namespace std const int max 105 int n int num max int main 非常數項的輸出 for...