Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
168280 C班陈彦宏 高精度乘法 C++ 解答错误 3 1 MS 316 KB 949 2024-08-20 09:17:00

Tests(1/30):


#include <bits/stdc++.h> using namespace std; const int MAXN=5001; void c(int a[],int b[],int ans[],int sum) { for(int j=0; j<sum; ++j) { ans[j]+=a[j]+b[j]; for(int i=j; ans[i]>=10; ++i) { ans[i+1]++; ans[i]-=10; } } } void Init(int a[],string str, int sum) { for(int i=0; i<sum; i++) a[sum-i-1]=str[i]-'0'; } void Output(int ans[]) { int i=MAXN-1; for(; ans[i]==0 && i>0; i--); for(; i>=0; i--) printf("%d",ans[i]); printf("\n"); } int main() { int a[MAXN]= {0},b[MAXN]= {0},ans[MAXN]= {0}; string str1,str2; cin>>str1>>str2; int la=str1.size(); int lb=str2.size(); Init(a,str1,la); Init(b,str2,lb); c(a,b,ans,la>=lb?la:lb); Output(ans); return 0; }


测评信息: