题目描述
回文数是从左向右读和从右向左读结果一样的数字串。
例如:121、44 和3是回文数,175和36不是。
对于一个给定的N,请你寻找一个回文数P,满足P>N。满足这样条件的回文数很多,你的任务是输出其中最小的一个。
输入格式
1行,一个正整数N。N的数值小于10^9。
输出格式
你的程序应该输出一行,最小的回文数P(P>N)。
输入输出样例
输入样例1:复制
44
输出样例1:复制
55
说明
100%的数据,N<10^9
【耗时限制】1000ms 【内存限制】128MB
代码:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
bool h(long long n){
long long rve=0;
long long nn=n;
while(n){
rve=rve*10+n%10;
n/=10;
}
if(nn==rve) return true;
return false;
}
int main(){
int n;
cin>>n;
for(int i=n+1;;i++){
if(h(i)){
cout<<i;
break;
}
}
return 0;
}