Submission #203821

#TimeUsernameProblemLanguageResultExecution timeMemory
203821blacktulipJJOOII 2 (JOI20_ho_t2)C++17
13 / 100
2083 ms772 KiB
#include <bits/stdc++.h> using namespace std; typedef long long lo; typedef pair< lo,lo > PII; #define fi first #define se second #define mp make_pair #define pb push_back #define fio() ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL) #define FOR for(int i=1;i<=n;i++) #define mid ((start+end)/2) #define ort ((bas+son)/2) const lo MAX = -1000000000000000000; const lo MIN = 1000000000000000000; const lo inf = 1000000000; const lo KOK = 100000; const lo LOG = 30; const lo li = 500005; const lo mod = 1000000007; int n,m,b[li],a[li],k,flag,t,ans=inf; int cev; string s; vector<int> v; int main(void){ fio(); cin>>n>>k>>s; for(int i=0;i<n;i++){ if(s[i]!='J')continue; cev=0; int ind=-1; for(int j=i;j<n;j++){ if(s[j]=='J')cev++; if(cev==k){ind=j;break;} } //~ cout<<cev<<endl; if(ind==-1)continue; cev=0; for(int j=ind;j<n;j++){ if(s[j]=='O')cev++; //~ cout<< if(cev==k){ind=j;break;} } //~ cout<<cev<<endl; if(cev!=k)continue; cev=0; for(int j=ind;j<n;j++){ if(s[j]=='I')cev++; if(cev==k){ind=j;break;} } //~ cout<<ind<<" : : "<<i<<endl; if(cev==k)ans=min(ans,ind-i+1-k*3); } if(ans==inf)ans=-1; cout<<ans<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...