AcWing 1524. 最长回文子串
原题链接
简单
作者:
harrytsz
,
2021-05-13 23:26:58
,
所有人可见
,
阅读 308
#include<iostream>
using namespace std;
int mx;
string ans;
void extendPalindrome(string str, int left, int right) {
while(left >= 0 && right < str.size() && str[left--] == str[right++]) {
if(right-left-1 > mx) {
mx = right - left - 1;
ans = str.substr(left+1, mx);
}
}
}
int countSubString(string str) {
int n = str.size();
for(int i = 0; i < n; i++) {
extendPalindrome(str, i, i);
extendPalindrome(str, i, i+1);
}
return mx;
}
int main() {
string str;
getline(cin, str);
cout << countSubString(str) << endl;
return 0;
}