#include using namespace std; static const int N = 3e5 + 10; static const int K = 20; int ile[N][K]; bool czyDziala(int l, int r) { bool czyPoj = false; for (int i = 0 ; i < K ; ++i) { if ((ile[r][i] - (l == 0 ? 0 : ile[l-1][i])) % 2 == 1) { if (czyPoj) return false; czyPoj = true; } } return true; } int n; bool check(int dl) { for (int i = dl-1; i < n; ++i) { if (czyDziala(i - dl + 1, i)) return true; } return false; } int main() { ios_base::sync_with_stdio(false); cin >> n; string s; cin >> s; for (int i = 0 ; i < n; ++i) { for (int j = 0 ; j < K; ++j) if (i > 0) ile[i][j] = ile[i-1][j]; ile[i][s[i]-'a']++; } //for (int i = 0 ; i < K ; ++i) // cout << (char)('a' + i) << " " ; //cout << "\n"; /* for (int i = 0 ; i < n ; ++i) { for (int j = 0; j < K ; ++j) { cout << ile[i][j] << " "; } cout << "\n"; }*/ int p = 1, kon = n; while (p < kon) { int mid = (p + kon) / 2; if (check(mid)) p = mid +1 ; else kon = mid - 1; } if (check(p)) cout << p << "\n"; else cout << p-1 << "\n"; }