Submission #877128

# Submission time Handle Problem Language Result Execution time Memory
877128 2023-11-22T22:50:50 Z Marco_Escandon JJOOII 2 (JOI20_ho_t2) C++11
100 / 100
9 ms 3412 KB
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int n,k;
string s;

vector<int> f(char c){
	vector<int> a(n+2);
	int I=0,t=0;
	for(int i=0;i<n;i++){
		if(i&&s[i-1]==c) t--;
		while(I<n&&t<k){
			if(s[I]==c) t++;
			I++;
		}
		a[i]=(t==k?I:n+1);
	}
	a[n]=a[n+1]=n+1;
	return a;
}

int main(){
	cin>>n>>k>>s;
	vector<int> a=f('J'),b=f('O'),c=f('I');
	int res=n;
	for(int i=0;i<n;i++){
		int x=c[b[a[i]]];
		if(x<=n) res=min(res,x-i-3*k);
	}
	cout<<(res==n?-1:res)<<endl;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 0 ms 428 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 344 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 1 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 1 ms 440 KB Output is correct
14 Correct 0 ms 600 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 0 ms 428 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 344 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 1 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 1 ms 440 KB Output is correct
14 Correct 0 ms 600 KB Output is correct
15 Correct 1 ms 348 KB Output is correct
16 Correct 0 ms 344 KB Output is correct
17 Correct 1 ms 348 KB Output is correct
18 Correct 0 ms 348 KB Output is correct
19 Correct 0 ms 348 KB Output is correct
20 Correct 1 ms 348 KB Output is correct
21 Correct 0 ms 604 KB Output is correct
22 Correct 0 ms 360 KB Output is correct
23 Correct 0 ms 348 KB Output is correct
24 Correct 0 ms 348 KB Output is correct
25 Correct 0 ms 600 KB Output is correct
26 Correct 0 ms 348 KB Output is correct
27 Correct 0 ms 348 KB Output is correct
28 Correct 0 ms 440 KB Output is correct
29 Correct 0 ms 348 KB Output is correct
30 Correct 0 ms 348 KB Output is correct
31 Correct 1 ms 436 KB Output is correct
32 Correct 0 ms 348 KB Output is correct
33 Correct 0 ms 348 KB Output is correct
34 Correct 0 ms 348 KB Output is correct
35 Correct 0 ms 436 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 0 ms 428 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 344 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 1 ms 348 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 1 ms 440 KB Output is correct
14 Correct 0 ms 600 KB Output is correct
15 Correct 1 ms 348 KB Output is correct
16 Correct 0 ms 344 KB Output is correct
17 Correct 1 ms 348 KB Output is correct
18 Correct 0 ms 348 KB Output is correct
19 Correct 0 ms 348 KB Output is correct
20 Correct 1 ms 348 KB Output is correct
21 Correct 0 ms 604 KB Output is correct
22 Correct 0 ms 360 KB Output is correct
23 Correct 0 ms 348 KB Output is correct
24 Correct 0 ms 348 KB Output is correct
25 Correct 0 ms 600 KB Output is correct
26 Correct 0 ms 348 KB Output is correct
27 Correct 0 ms 348 KB Output is correct
28 Correct 0 ms 440 KB Output is correct
29 Correct 0 ms 348 KB Output is correct
30 Correct 0 ms 348 KB Output is correct
31 Correct 1 ms 436 KB Output is correct
32 Correct 0 ms 348 KB Output is correct
33 Correct 0 ms 348 KB Output is correct
34 Correct 0 ms 348 KB Output is correct
35 Correct 0 ms 436 KB Output is correct
36 Correct 7 ms 3048 KB Output is correct
37 Correct 7 ms 3304 KB Output is correct
38 Correct 7 ms 3308 KB Output is correct
39 Correct 8 ms 3280 KB Output is correct
40 Correct 8 ms 3324 KB Output is correct
41 Correct 9 ms 3308 KB Output is correct
42 Correct 9 ms 3308 KB Output is correct
43 Correct 5 ms 2284 KB Output is correct
44 Correct 6 ms 2692 KB Output is correct
45 Correct 7 ms 3232 KB Output is correct
46 Correct 8 ms 3304 KB Output is correct
47 Correct 7 ms 3308 KB Output is correct
48 Correct 8 ms 3412 KB Output is correct
49 Correct 5 ms 2284 KB Output is correct
50 Correct 7 ms 3272 KB Output is correct
51 Correct 7 ms 3308 KB Output is correct
52 Correct 7 ms 3052 KB Output is correct
53 Correct 7 ms 3316 KB Output is correct
54 Correct 5 ms 3308 KB Output is correct
55 Correct 5 ms 3300 KB Output is correct
56 Correct 5 ms 3308 KB Output is correct