Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
168228 | C班-范浩宇 | 高精度乘法 | C++ | 解答错误 | 13 | 1 MS | 244 KB | 474 | 2024-08-20 08:28:22 |
#include<bits/stdc++.h> using namespace std; string fun(string a, string b){ string ans(max(a.size(),b.size())+1,'0'); for(int i=ans.size()-1,l1=a.size(),l2=b.size(); i>=0; i--) { int t=(ans[i]-'0')+(l1<1?0:a[--l1]-'0')*(l2<1?0:b[--l2]-'0'); ans[i]=t%10+'0'; ans[i-1]=(ans[i-1]-'0'+t/10)+'0'; } for(; ans[0]=='0' && ans.size()>1; ans.erase(0,1)); return ans; } int main(){ string a, b; cin>>a>>b; cout<<fun(a, b)<<endl; }