Submission #1148545

#TimeUsernameProblemLanguageResultExecution timeMemory
1148545nuutsnoyntonJOIOJI (JOI14_joioji)C++20
100 / 100
27 ms7480 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...