Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
169172 B班-陈行知 高精度乘法 C++ 通过 100 1 MS 256 KB 990 2024-08-20 15:28:07

Tests(30/30):


#include <iostream> #include <bits/stdc++.h> using namespace std; string multiply(string num1, string num2) { int len1 = num1.size(); int len2 = num2.size(); int result_len = len1 + len2; int result[result_len]; for (int i = 0; i < result_len; i++) { result[i] = 0; } for (int i = len1 - 1; i >= 0; i--) { for (int j = len2 - 1; j >= 0; j--) { int mul = (num1[i] - '0') * (num2[j] - '0'); int sum = result[i + j + 1] + mul; result[i + j] += sum / 10; result[i + j + 1] = sum % 10; } } string res = ""; int i = 0; while (i < result_len - 1 && result[i] == 0) { i++; } while (i < result_len) { res += to_string(result[i++]); } return res; } int main() { string num1, num2; cin >> num1 >> num2; string result = multiply(num1, num2); cout << result << endl; return 0; }


测评信息: