提交时间:2024-08-20 17:50:09
运行 ID: 169854
#include <iostream> #include <string> #include <vector> using namespace std; string mul(string a, string b) { vector<int> r(a.size() + b.size(), 0); for (int i = 0; i < a.size(); i++) { for (int j = 0; j < b.size(); j++) { int mul = (a[a.size() - 1 - i] - '0') * (b[b.size() - 1 - j] - '0'); r[i + j] += mul; r[i + j + 1] += r[i + j] / 10; r[i + j] %= 10; } } string rstring = ""; for (int i = r.size() - 1; i >= 0; i--) { rstring += to_string(r[i]); } while (rstring.size() > 1 && rstring[0] == '0') { rstring.erase(0, 1); } return rstring; } int main() { string a, b; cin >> a >> b; cout << mul(a, b) << endl; return 0; }