杭电1229 还是A+B

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1229

解题思路,最开始想的是把输入的数据存入数组中,比如输入 1,在数组中就储存为1000(因为数据不超过10000,所以四位数字就够了),然后再对数组进行处理,使它变成0001,这样就可以方便的比较末尾数字,后来觉得这样做其实还更麻烦,所以就是把它当作一个整型数据输入的来做的。

#include<stdio.h>
int main()
{
	int a,b,k;
	while(scanf("%d %d %d",&a,&b,&k)!=EOF&&a&&b)
	{
		int s[8],t[8];
		int i,num=0;
		s[0]=a%10;
		s[1]=a/10%10;
		s[2]=a/100%10;
		s[3]=a/1000%10;
		s[4]=0;
		s[5]=0;
		s[6]=0;
		s[7]=0;
		t[0]=b%10;
		t[1]=b/10%10;
		t[2]=b/100%10;
		t[3]=b/1000%10;
		t[4]=0;
		t[5]=0;
		t[6]=0;
		t[7]=0;
		for(i=0;i<k;i++)
		{
			if(s[i]==t[i])
				num++;
		}
		if(num==k)
			printf("-1
");
		else
			printf("%d
",a+b);
	}
}

  

原文地址:https://www.cnblogs.com/wuyuewoniu/p/4082226.html