解題心得
CPE 的系統跟 zerojudge 的測資格式不太一樣,後者好像不是用 \n 換行,只好再用別的方法寫。
程式碼
[for CPE]
#include <iostream> #include <vector> #include <math.h> using namespace std; int main() { long long int x, a; while (cin >> x) { vector<long long int> bits; long long int ans = 0; while (cin >> a && getchar() != '\n') bits.push_back(a); for (int i = 0; i < bits.size(); i++) { bits[i] *= bits.size() - i; ans += bits[i] * pow(x, bits.size() - 1 - i); } cout << ans << endl; } return 0; }
[for ZJ]
#include <iostream> #include <vector> #include <sstream> #include <math.h> #include <string> using namespace std; int main() { long long int x, a; string s; while (cin >> x) { vector<long long int> bits; long long int ans = 0; cin.ignore(); getline(cin, s); stringstream ss(s); while (ss >> a) bits.push_back(a); bits.pop_back(); for (int i = 0; i < bits.size(); i++) { bits[i] *= bits.size() - i; ans += bits[i] * pow(x, bits.size() - 1 - i); } cout << ans << endl; } return 0; }
沒有留言:
張貼留言