#include using namespace std; const int N = 5050; char s[N]; int n; int ok[N][N], dp[N]; bool p(int l, int r) { while(l < r) { if(s[l] != s[r]) return false; l ++; r --; } return true; } int main() { cin >> (s + 1); n = strlen(s + 1); dp[0] = N; for(int i = 1; i <= n; i ++) { for(int j = 1; j <= i; j ++) { if(p(j, i)) dp[i] = max(dp[i], min(dp[j - 1], i - j + 1)); } } cout << dp[n]; }