Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
169922 | B班 林子翀 | 高精度乘法 | C++ | 通过 | 100 | 1 MS | 272 KB | 649 | 2024-08-20 20:16:31 |
#include<bits/stdc++.h> using namespace std; int a[10000],b[10000],c[10000]; int main() { string d,e; cin>>d>>e; for (int i=0;i<d.size();i++) { a[d.size()-1-i]=d[i]-'0'; } for (int i=0;i<e.size();i++) { b[e.size()-1-i] = e[i]-'0'; } for (int i=0;i<d.size();i++) { for (int j=0; j<e.size();j++) { c[j+i] += a[i] * b[j]; c[j+1+i] += c[j+i] / 10; c[j+i] %= 10; } } int k=d.size()+e.size(); while(c[k-1]==0&&k>1) { k--; } for (int i = 0; i < k; i ++) { cout << c[k-1-i]; } return 0; }