题目描述
读入两个小于10000的正整数A和B,计算A+B。需要注意的是:如果A和B的末尾K(不超过8)位数字相同,请直接输出-1。
输入描述:
测试输入包含若干测试用例,每个测试用例占一行,格式为"A B K",相邻两数字有一个空格间隔。当A和B同时为0时输入结束,相应的结果不要输出。
输出描述:
对每个测试用例输出1行,即A+B的值或者是-1。
示例1
输入
1 2 1
11 21 1
108 8 2
36 64 3
0 0 1
输出
3
-1
-1
100
代码:
#include<stdio.h>
#include<math.h>
#include<algorithm>
#include<string.h>
#include<iostream>
#include<iomanip>
#include<vector>
#include<map>
#include<stack>
#include<queue>
using namespace std;
//末尾k位,不就是number % 10的k次方 的余数么
int main()
{
int a , b , k; //不想写number,因为太长了的单词
while(cin >> a >> b >> k){
int count = pow(10,k);
if(a == 0 && b == 0){
break;
}
int a1 = a % count;
int b1 = b % count;
if(a1 == b1){
cout << -1 << endl;
continue;
}else{
cout << a+b << endl;
}
}
return 0;
}