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