class Solution { public: int getLongestPalindrome(string str, int n) { // write code here //双指针,从中间进行扩散向两边 int res = 0; for(int i = 0; i < n; i++){ //奇数的情况 即是本位置不看 int l = i - 1, r = i + 1; while(l >= 0 && r < n && str[l] == str[r]) l--, r++; res = max(res, r - l - 1); // [l + 1, r - 1] //偶数的情况 本位置也要看 l = i, r = i + 1; while(l >= 0 && r < n && str[l] == str[r]) l--, r++; res = max(res, r - l - 1); } return res; } };