从最大长度开始,对子字符串进行枚举,判断是否符合条件,如果符合则返回子字符串长度。

#include <iostream>
using namespace std;

int main() {
    string s;
    cin >> s;
    int start;
    int end;
    for (int length = s.length(); length > 0; length--) {
        for (int i = 0; i <= s.length() - length; i++) {
            int flag = true;
            start = i;
            end = i + length - 1;
            while (start <= end) {
                if (s.at(start) != s.at(end)) {
                    flag = false;
                    break;
                }
                start++;
                end--;
            }
            if (flag) {
                cout << length;
                return 0;
            }
        }
    }
    return 0;
}
// 64 位输出请用 printf("%lld")