제출 #717624

#제출 시각아이디문제언어결과실행 시간메모리
717624vjudge1JJOOII 2 (JOI20_ho_t2)C++17
100 / 100
12 ms1780 KiB
#include <bits/stdc++.h> using namespace std; vector<int> indJ, indO, indI; int n, k; int main() { ios::sync_with_stdio(0); cin.tie(0); cin >> n >> k; for(int i = 0; i < n; i++) { char c; cin >> c; if(c == 'J') indJ.push_back(i); else if(c == 'O') indO.push_back(i); else indI.push_back(i); } int res = INT_MAX; for(int i = 0; i + k - 1 < (int)indJ.size(); i++) { int x = indJ[i + k - 1]; auto it = upper_bound(indO.begin(), indO.end(), x); if((int)(indO.end() - it) < k) break; it += (k - 1); x = *it; it = upper_bound(indI.begin(), indI.end(), x); if((int)(indI.end() - it) < k) break; it += (k - 1); res = min(res, *it - indJ[i] + 1 - (3 * k)); } cout << (res == INT_MAX ? -1 : res) << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...