-
题目描述:
-
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
-
<pre name="code" class="cpp">#include <iostream> #include <cstdio> #include <string> #include <cstring> using namespace std; int a,b; int ra,rb,r; int n; void rev(int x,int &y) { while(x) { int temp=x%10; x/=10; y=y*10+temp; } } int main() { scanf("%d",&n); while(n--) { scanf("%d%d",&a,&b); ra=rb=r=0; rev(a,ra); rev(b,rb); rev(a+b,r); if(r==ra+rb) printf("%d\n",a+b); else printf("NO\n"); } return 0; }