這題在輸入部分,可用字串去存,用 getline(cin, line) 輸入,然後用 stringstream 去一個一個讀測資。
另外霍納法則(又名秦九韶算法),它是另一種計算多項式值的演算法,一般的指數冪運算都是 O(n^2),用霍納法則算可降到 O(n),可避免 TLE。
詳細請至:https://hackmd.io/@LukeTseng/rkuh9L9Hge#18-498-bis
這題在輸入部分,可用字串去存,用 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'); } }