#include<bits/stdc++.h>
using namespace std;
using ll = long long;
map < pair < ll, pair < ll, ll > > , ll > A;
int main() {
ll n, m, r,s, x, y, i, j, ans, t, J, O, I;
cin >> n;
string str;
cin >> str;
str = ">" + str;
ans = 0;
J = O = I =0;
A[make_pair(J, make_pair(O, I))] = 1;
for (i = 1; i <= n; i ++) {
if ( str[i] == 'J') J ++;
if ( str[i] == 'O') O ++;
if ( str[i] == 'I') I ++;
r = min({J, O, I});
J -= r;
O -= r;
I -= r;
s = A[make_pair(J, make_pair(O, I))];
if ( s != 0) {
ans= max(ans, i - s + 1);
}
else A[make_pair(J, make_pair(O, I))] = i + 1;
// cout << J << " " << O << " " << I << endl;
}
cout << ans << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |