GDUFE ACM-1053

题目:http://acm.gdufe.edu.cn/Problem/read/id/1053

 

还是A+B

Time Limit: 2000/1000ms (Java/Others)

Problem Description:

   读入两个小于10000的正整数A和B,计算A+B。需要注意的是:如果A和B的末尾K(不超过8)位数字相同,(位数不足前导补0)请直接输出-1。

Input:

测试输入包含若干测试用例,每个测试用例占一行,格式为"A B K",相邻两数字有一个空格间隔。当A和B同时为0时输入结束,相应的结果不要输出。

Output:

对每个测试用例输出1行,即A+B的值或者是-1。

Sample Input:

1 2 1
11 21 1
108 8 2
36 64 3
0 0 1

Sample Output:

3
-1
-1
100

思路:先判断AB是否同时为0,然后用循环判断后k位是否相同,再进行计算

难度:简单呐

代码:
 1 #include<stdio.h>
 2 int main()
 3 {
 4     int a,b,k,i,c,d,r;
 5     while(scanf("%d%d%d",&a,&b,&k)!=EOF)
 6     {
 7         if(a==0&&b==0)
 8             break;
 9             c=a,d=b;
10         for(i=0;i<k;i++)
11         {
12             if(c%10==d%10)
13             r=1;
14             else {r=0;break;}
15             c=c/10,d=d/10;
16         }
17         if(r==1)
18             {printf("-1\n");continue;}
19         printf("%d\n",a+b);
20     }
21     return 0;
22 }

 

posted @ 2016-10-17 20:17  ruoruoruoruo  阅读(218)  评论(0编辑  收藏  举报