#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
int n, k; cin >> n >> k;
string x; cin >> x;
vector<int> J;
vector<int> O;
vector<int> I;
for(int i = 0; i < n; i++){
if(x[i] == 'J'){
J.push_back(i);
}else if(x[i] == 'O'){
O.push_back(i);
}else{
I.push_back(i);
}
}
int mn = 1e18;
for(int i = 0; i < n; i++){
//start at i
auto itJ = lower_bound(J.begin(), J.end(), i) - J.begin();
itJ += k-1;
if(itJ >= J.size()){
continue;
}
auto itO = lower_bound(O.begin(), O.end(), J[itJ]) - O.begin();
itO += k-1;
if(itO >= O.size()){
continue;
}
auto itI = lower_bound(I.begin(), I.end(), O[itO]) - I.begin();
itI += k-1;
if(itI >= I.size()){
continue;
}
mn = min(mn, I[itI] - i + 1 - 3*k);
}
if(mn == 1e18){
mn = -1;
}
cout << mn << "\n";
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |