Submission #1279001

#TimeUsernameProblemLanguageResultExecution timeMemory
1279001IBoryJJOOII 2 (JOI20_ho_t2)C++20
100 / 100
18 ms2468 KiB
#include <bits/stdc++.h> using namespace std; int N, K; map<char, vector<int>> P; int Go(char i, int cur) { int pos = lower_bound(P[i].begin(), P[i].end(), cur) - P[i].begin(); return (P[i].size() < pos + K ? 1e9 : P[i][pos + K - 1] + 1); } int main() { string S, JOI = "JOI"; cin >> N >> K >> S; for (int i = 0; i < N; ++i) P[S[i]].push_back(i); int ans = 1e9; for (int n : P['J']) { int t = n; for (char c : JOI) t = Go(c, t); ans = min(ans, t - n - 3 * K); } cout << (N < ans ? -1 : ans); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...