题解 CF863A 【Quasi-palindrome】
其实我们只需要按照程序模拟即可,读入一个字符串,在前面加前导0,同时做一个判断回文函数:
bool huiwen(string s)
{
string x = s;
reverse(x.begin(), x.end());
return x == s;
}
接下来511ms的简单代码来啦:
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
string s;
bool huiwen(string s)//判断是否回文
{
string x = s;
reverse(x.begin(), x.end());
return x == s;
}
int main()
{
cin >> s;
if(huiwen(s))
{
cout << "YES\n";
return 0;
}
for(int i = 1; i <= 10; i++)//10遍就够了
{
s = '0' + s;//注意是'0'+ s不是s + '0'
if(huiwen(s))//如果是回文就是YES
{
cout << "YES\n";//不然就是NO
return 0;
}
}
cout << "NO\n";
return 0;
}

浙公网安备 33010602011771号