记录编号 |
338859 |
评测结果 |
AAAAAAAAAAAA |
题目名称 |
增强的乘法问题 |
最终得分 |
100 |
用户昵称 |
Zwoi_只会打表抄代码的蒟蒻 |
是否通过 |
通过 |
代码语言 |
C |
运行时间 |
0.025 s |
提交时间 |
2016-11-05 16:11:47 |
内存使用 |
0.27 MiB |
显示代码纯文本
#include <stdio.h>
#include <string.h>
int a[110],b[110],e[210],lc,ld,i,j,l,ll;
char c[110],d[110];
int main()
{
freopen("mul.in","r",stdin);
freopen("mul.out","w",stdout);
scanf("%s",c);
scanf("%s",d);
/*if(c[0]=='-')
{
strcpy(c,c+1);
if(d[0]!='-')
printf("-");
else
strcpy(d,d+1);
}
else
if(d[0]=='-')
{
printf("-");
strcpy(d,d+1);
}*/
if(d[0]=='0'||c[0]=='0')
{
printf("0");
return 0;
}
lc=strlen(c);
ld=strlen(d);
for(i=0;i<lc;i++)
a[i]=c[i]-'0';
for(i=0;i<ld;i++)
b[i]=d[i]-'0';
l=ll=lc+ld-1;
for(i=1;i<=lc;i++)
{
for(j=1;j<=ld;j++)
{
e[l-j+1]+=b[ld-j]*a[lc-i];
e[l-j]+=(e[l-j+1])/10;
e[l-j+1]%=10;
}
l--;
}
if(e[0])
printf("%d",e[0]);
for(i=1;i<=ll;i++)
printf("%d",e[i]);
return 0;
}