#46688: C++ 詳解、霍納法則


luke.skywalker.tw@gmail.com (Luke Tseng)

學校 : 高雄市立鼓山高級中學
編號 : 234583
來源 : [42.74.153.206]
最後登入時間 :
2025-09-30 16:07:09

這題在輸入部分,可用字串去存,用 getline(cin, line) 輸入,然後用 stringstream 去一個一個讀測資。

另外霍納法則(又名秦九韶算法),它是另一種計算多項式值的演算法,一般的指數冪運算都是 O(n^2),用霍納法則算可降到 O(n),可避免 TLE。

詳細請至:https://hackmd.io/@LukeTseng/rkuh9L9Hge#18-498-bis

#53281: Re: C++ 詳解、霍納法則


kenny980721.tu@gmail.com (有事直接私)

學校 : 國立中興大學附屬高級中學
編號 : 290039
來源 : [220.134.29.87]
最後登入時間 :
2025-09-13 17:26:11

這題在輸入部分,可用字串去存,用 getline(cin, line) 輸入,然後用 stringstream 去一個一個讀測資。

另外霍納法則(又名秦九韶算法),它是另一種計算多項式值的演算法,一般的指數冪運算都是 O(n^2),用霍納法則算可降到 O(n),可避免 TLE。

詳細請至:https://hackmd.io/@LukeTseng/rkuh9L9Hge#18-498-bis


有用 推一個👍👍👍👍👍

 

btw 如果是想追求效率的 建議直接getline 然後一個一個讀 不要用sstream

vector<int> v;
int t = 0;
bool b = true;
for(char c : s){ if(c == ' '){ v.push_back((b ? t : -t)); b=true; t = 0; }else if(c == '-'){ b=false; }else { t = t*10+(c-'0'); } }