12翻一下是21,34翻一下是43,12+34是46,46翻一下是64,现在又任意两个正整数,问他们两个数反转的和是否等于两个数的和的反转。
第一行一个正整数表示测试数据的个数n。
只有n行,每行两个正整数a和b(0<a,b<=10000)。
如果满足题目的要求输出a+b的值,否则输出NO。
2 12 34 99 1
46 NO
#include <iostream>
using namespace std;
int zhuan(int number)
{
int n = 0;//余数.
int m = number;
while(m != 0)
{
n = n*10 + m %10; //number的最低位变为n的最高位
m = m /10;
}
return n;
}
int main()
{
int n;
int i;
int x,y,sum;
while(cin>>n)
{
for(i=0;i<n;i++)
{
cin>>x>>y;
sum=x+y;
if(zhuan(sum)==(zhuan(x)+zhuan(y)))
cout<<sum<<endl;
else
cout<<"NO"<<endl;
}
}
return 0;
}
/**************************************************************
Problem: 1089
User: vhreal
Language: C++
Result: Accepted
Time:0 ms
Memory:1520 kb
****************************************************************/原文地址:http://blog.csdn.net/wtyvhreal/article/details/42343003