思路
c[i+j-1]+=a[i]*a[j]
#include<bits/stdc++.h>
#define maxn 5050
using namespace std;
int a[maxn],b[maxn],c[maxn];
int main(){
string A,B;
cin>>A>>B;
for(int i=A.length()-1,j=1;i>=0;i--,j++)
a[j]=A[i]-'0';
for(int i=B.length()-1,j=1;i>=0;i--,j++)
b[j]=B[i]-'0';
for(int i=1;i<=A.length();i++){
for(int j=1;j<=B.length();j++){
c[i+j-1]+=a[i]*b[j];
}
}
int len=A.length()+B.length(); //位数不超过两个相加
for(int i=1;i<=len;i++){
c[i+1]+=c[i]/10;
c[i]=c[i]%10;
}
for(;!c[len];) //去除前导0 ,但要注意0*n ,len=0
len--;
for(int i=(len,1);i>=1;i--) //max包括乘0的情况
cout<<c[i];
return 0;
}