题解 CF981A 【Antipalindrome】
这里给出一个不用substr的写法,复杂度与大家都是差不多的,暴力枚举,但其实数据大一点暴力可能会T的
代码:
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
string s, tmp = "";
bool pd(string x)//判断是否不是回文
{
string y = x;
reverse(y.begin(), y.end());
return x != y;
}
int main()
{
cin >> s;
int ans = 0;
int len = s.length() - 1;
for(int i = 0; i <= len; i++)
{
tmp = "";//清空
for(int j = i; j <= len; j++)
{
tmp += s[j];
if(pd(tmp))
{
ans = ans > j - i + 1 ? ans : j - i + 1;//三目运算符
}
}
}
cout << ans << endl;;
return 0;
}

浙公网安备 33010602011771号