WA code:
#include<iostream>
#include<cmath>
#include<cstdio>
#include<algorithm>
#include<iomanip>
#include<queue>
#include<stack>
#include<vector>
#include<deque>
#include<string.h>
#include<cstring>
#include<string>
#include<map>
#include<set>
using namespace std;
const int N=1e5+5;
string a,b;
int c[N],d[N];
int ans[N];
void print() {
int len=a.size()+b.size();
while(a[len]==0&&len>1) len--;
for(int i=len; i>=1; i--) cout<<ans[i];
}
int main() {
cin>>a>>b;
int la=a.size();
int lb=b.size();
for(int i=0; i<la; i++) {
c[la-i]=a[i]-'0';
}
for(int i=0; i<lb; i++) {
d[lb-i]=b[i]-'0';
}
int x,last=0;
for(int i=1; i<=la+1; i++) {
last=0;
for(int j=1; j<=lb+1; j++) {
x=a[i]*b[j];
x+=last;
last=x/10;
ans[i+j-1]+=x%10;
if(ans[i+j-1]>=10) {
ans[i+j]++;
ans[i+j-1]%=10;
}
}
}
print();
return 0;
}