题目链接: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\n");
else
printf("%d\n",a+b);
}
}
原文:http://www.cnblogs.com/wuyuewoniu/p/4082226.html