比赛 |
防止浮躁的小练习v0.4 |
评测结果 |
AWWWWA |
题目名称 |
增强的减法问题 |
最终得分 |
33 |
用户昵称 |
Zwoi_只会打表抄代码的蒟蒻 |
运行时间 |
0.001 s |
代码语言 |
C |
内存使用 |
0.29 MiB |
提交时间 |
2016-10-13 19:20:45 |
显示代码纯文本
#include <stdio.h>
#include <string.h>
#include <math.h>
int a[110],b[110],i,la,lb,max,j;
char aa[110],bb[110];
void cut(int x[],int y[])
{
for(i=max;i>0;i--)
{
x[i]-=y[i];
if(x[i]<0)
{
x[i]+=10;
x[i-1]--;
}
}
if(x[0]==-1||max==lb)
printf("-");
for(i=1;i<=max;i++)
printf("%d",x[i]);
}
int main()
{
freopen("sub.in","r",stdin);
freopen("sub.out","w",stdout);
gets(aa);
gets(bb);
la=strlen(aa);
lb=strlen(bb);
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
if(la>lb)
{
max=la;
j=lb;
for(i=max;i>0;i--)
a[i]=aa[i-1]-'0';
for(i=j;i>0;i--)
b[max-j+i]=bb[i-1]-'0';
cut(a,b);
}
else
{
max=lb;
j=la;
for(i=j;i>0;i--)
a[max-j+i]=aa[i-1]-'0';
for(i=1;i<=max;i++)
b[i]=bb[i-1]-'0';
cut(b,a);
}
return 0;
}