block1_孟立宸 @ 2021-07-05 15:33:17
求助第4、5点TLE
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a1[101],b1[101];
int a[101],b[101],c[10001],lena,lenb,lenc,i,j,x;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
scanf("%s",a1);
scanf("%s",b1);
lena = strlen(a1);
lenb = strlen(b1);
for(i = 0;i <= lena - 1;i++)
{
a[lena-i] = a1[i]-48;
}
for(i = 0;i <= lenb - 1;i++)
{
b[lenb-i] = b1[i]-48;
}
for(i = 1;i<=lena;i++)
{
x = 0;
for(j = 1; j<=lenb;j++)
{
c[i + j - 1] = a[i] * b[j] + x + c[i + j - 1];
x = c[i + j - 1]/ 10;
c[i + j - 1]%= 10;
}
c[i + lenb] = x;
}
lenc = lena + lenb;
while(c[lenc] == 0 && lenc > 1)
{
lenc--;
}
for(i = lenc;i>=1;i--)
{
cout << c[i];
}
cout << endl;
return 0;
}