描述
12翻一下是21,34翻一下是43,12+34是46,46翻一下是64,现在又任意两个正整数,问他们两个数反转的和是否等于两个数的和的反转。
输入描述:
每行两个正整数a和b(0<a,b<=10000)。
输出描述:
如果满足题目的要求输出a+b的值,否则输出NO。
示例1
输入:
12 34 99 1
输出:
46 NO
解题思路:
(1)定义翻转函数;
(2)判断是否符合条件;
代码:
#include <iostream>
using namespace std;
int fan(int num){ //翻转函数
int sum=0;
while(num>0){
sum= (sum*10)+(num%10);
num/=10;
}
return sum;
}
int main() {
int a, b;
while (cin >> a >> b) {
if((fan(a)+fan(b))==fan(a+b)){ //判断是否符合条件
cout<<a+b<<endl;
}else{
cout<<"NO"<<endl;
}
}
}