2664: 【例22.3】 回文数

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:83 解决:40

题目描述

先计算出两个正整数 $a+b$ 的结果 $sum$,然后要判断 $sum$ 是不是回文数。
回文数:设 $n$ 是一任意自然数。若将 $n$ 的各位数字反向排列所得自然数 $n_1$与 $n$ 相等,则称 $n$ 为回文数。例如 $121$ 是回文数,而 $123$ 不是回文数。

输入

输入共一行,两个以空格隔开的正整数 $a$,$b$($1≤a,b≤100$)。

输出

输出共两行,第一行一个正整数 $sum$,表示 $a$,$b$ 的和。
如果 $sum$ 是回文数,则第二行输出 “Yes”,否则第二行输出 “No”。输出不带引号。

样例输入 复制

80 41

样例输出 复制

121
Yes

提示

#include<bits/stdc++.h>
using namespace std;
int a,b,gw,sw,bw,sum;
int main(){
    cin>>a>>b;
    sum=a+b;
    cout<<sum<<endl;
    gw=sum%10,sum/=10;
    sw=sum%10,sum/=10;
    bw=sum;
    if(a+b>=100&&gw==bw||
	   a+b>=10&&a+b<=99&&gw==sw||
	   a+b>=0&&a+b<=9)
	       cout<<"Yes";
	else cout<<"No";
	return 0;
}