#include"string.h"
#include"stdio.h"
#include"iostream"
using namespace std;
typedef long long ll;
int main()
{
char a[20000+50],b[20000+5000];
ll res[30000];
while(scanf("%s%s",&a,&b)!=EOF)
{
int i,j,k,start;
int lena=strlen(a);
int lenb=strlen(b);
int len=lena+lenb-1;
memset(res,0,sizeof(res));
for(i=lenb-1,start=0;i>=0;i--,start++)
{
for(j=lena-1,k=start;j>=0;j--,k++)
res[k]+=(b[i]-48)*(a[j]-48);
}
for(i=0;i<len;i++)
if(res[i]>=10)
{
res[i+1]+=res[i]/10;
res[i]%=10;
}
if(res[len]) len++;
if(res[len-1]>=10)
{
res[len]+=res[len-1]/10;
res[len-1]%=10;
len++;
}
for(i=len-1;i>=0;i--)
cout<<res[i];
cout<<endl;
}
return 0;
}
VIJOS 1040大数乘法
最新推荐文章于 2019-03-12 08:59:55 发布