Little_Andyyu @ 2022-08-05 13:57:11
#include<bits/stdc++.h>
using namespace std;
int main()
{
char d[2001],e[2001];
int a[2001],b[2001],c[2001],la,lb,lc,x;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
cin>>d;
cin>>e;
la=strlen(d);
lb=strlen(e);
for(int i=0;i<=la-1;i++){
a[la-i]=d[i]-48;
}
for(int i=0;i<=lb-1;i++){
b[lb-i]=e[i]-48;
}
for(int i=1;i<=la;i++){
x=0;
for(int j=1;j<=lb;i++){
c[i+j-1]+=a[i]*b[j]+x;
x=c[i+j-1]/10;
c[i+j-1]%=10;
}
c[i+lb]=x;
}
lc=la+lb;
while(lc>1&&c[lc]==0){
lc--;
}for(int i=lc;i>=1;i--){
cout<<c[i];
}
return 0;
}
by ajahjahah @ 2022-08-05 14:03:38
众所周知,
by 你的洛 @ 2022-08-05 14:04:30
两个2000位数相乘,答案的长度当然超过2000位