Hdu 1229 还是A+B

还是A+B

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 21182    Accepted Submission(s): 10266

Problem Description

读入两个小于10000的正整数A和B,计算A+B。需要注意的是:如果A和B的末尾K(不超过8)位数字相同,请直接输出-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

#include<stdio.h>
int pow(int x,int n)//求次方 
{
    int y=1;
    while(n--)
    {
        y*=x;
    }
    return y;
}
int main()
{
    int a,b,k;
    while(1)
    {
        scanf("%d %d %d",&a,&b,&k);
        if(a==0&&b==0)
            break;
        if(k==0)
            printf("%d
",a+b);
        else
        {
            if(a%pow(10,k)!=b%pow(10,k))//求余得最后一位值                 printf("%d
",a+b);
            else
                printf("-1
");
        }
    }
    return 0;
}

  

原文地址:https://www.cnblogs.com/zhangliu/p/7057951.html