给一种更 STL 的做法
思路还是那样,删除前导0之后判断回文。
删除时可以使用STL的 erase 函数删除,erase(pos,len)代表从pos位开始删除len位
判断回文时可以采用STL的 reverse 函数 ,reverse(s.begin(),s.end())代表将字符串s反转。
代码:
#include<bits/stdc++.h>
using namespace std;
string s;
bool check(string s)
{
string s1=s;
reverse(s.begin(),s.end());
if(s1==s)return true;
return false;
}
int main()
{
cin>>s;
int l=s.length();
int i=l-1;
while(s[i]=='0')
{
s.erase(i,1);
i--;
}
if(check(s))cout<<"YES"<<endl;
else cout<<"NO"<<endl;
return 0;
}