比赛 防止浮躁的小练习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;
}