# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
293278 | 2020-09-07T20:19:23 Z | CaroLinda | Monochrome Points (JOI20_monochrome) | C++14 | 115 ms | 512 KB |
#include <bits/stdc++.h> #define pb push_back #define ll long long #define pii pair<int,int> #define mk make_pair #define all(x) x.begin(),x.end() #define ff first #define ss second #define debug printf #define lp(i,a,b) for(int i = a ; i < b ; i++ ) #define sz(x) (int)(x.size()) const int MAXN = 4010 ; using namespace std ; int N , ans ; int myPair[MAXN] , qtd[MAXN][2] ; vector<int> aux ; vector<pii> lines ; char str[MAXN] ; int checkIntersection( pii p1 , pii p2 ) { int type1 = ( p2.ff > p1.ff && p2.ff < p1.ss )&( p2.ss > p1.ff && p2.ss < p1.ss ) ; int type2 = ( p2.ff > p1.ss || p2.ff < p1.ff )&( p2.ss > p1.ss || p2.ss < p1.ff ) ; return type1 == 0 && type2 == 0 ; } int main() { scanf("%d", &N ) ; scanf("%s", str ) ; for(int i = 0 ; i < 2*N ; i++ ) { qtd[i][ (str[i] == 'W' ) ]++ ; qtd[i+1][0] = qtd[i][0]; qtd[i+1][1] = qtd[i][1] ; } for(int i = 1 ; i < 2*N ; i++ ) { if( str[i] == str[0] ) continue ; lines.clear() ; int idx = i ; lines.pb( mk(0,i) ) ; for(int j = 1 ; j != 2*N ; j++ ) { if( str[j] != str[0] ) continue ; idx = (idx == 2*N - 1) ? 0 : idx+1 ; while( str[idx] == str[j] ) { if(idx == 2*N - 1) idx = 0 ; else idx++ ; } if( idx < j ) lines.pb(mk(idx,j)) ; else lines.pb( mk(j,idx) ) ; } int temp = 0 ; for(int a = 0 ; a < sz(lines) ; a++ ) { int qtdBlack = qtd[ lines[a].ss - 1 ][0] - qtd[ lines[a].ff ][0] ; int qtdWhite = qtd[ lines[a].ss - 1 ][1] - qtd[ lines[a].ff ][1] ; temp += min( qtdBlack, N - 1 - qtdWhite ) + min( qtdWhite, N - 1 - qtdBlack ) ; } ans = max(ans, temp>>1) ; } printf("%d\n" , ans ) ; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 256 KB | Output is correct |
2 | Correct | 0 ms | 256 KB | Output is correct |
3 | Correct | 0 ms | 256 KB | Output is correct |
4 | Correct | 0 ms | 256 KB | Output is correct |
5 | Correct | 0 ms | 256 KB | Output is correct |
6 | Correct | 0 ms | 256 KB | Output is correct |
7 | Correct | 0 ms | 256 KB | Output is correct |
8 | Correct | 0 ms | 256 KB | Output is correct |
9 | Correct | 0 ms | 256 KB | Output is correct |
10 | Correct | 1 ms | 256 KB | Output is correct |
11 | Correct | 0 ms | 256 KB | Output is correct |
12 | Correct | 0 ms | 256 KB | Output is correct |
13 | Correct | 0 ms | 256 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 256 KB | Output is correct |
2 | Correct | 0 ms | 256 KB | Output is correct |
3 | Correct | 0 ms | 256 KB | Output is correct |
4 | Correct | 0 ms | 256 KB | Output is correct |
5 | Correct | 0 ms | 256 KB | Output is correct |
6 | Correct | 0 ms | 256 KB | Output is correct |
7 | Correct | 0 ms | 256 KB | Output is correct |
8 | Correct | 0 ms | 256 KB | Output is correct |
9 | Correct | 0 ms | 256 KB | Output is correct |
10 | Correct | 1 ms | 256 KB | Output is correct |
11 | Correct | 0 ms | 256 KB | Output is correct |
12 | Correct | 0 ms | 256 KB | Output is correct |
13 | Correct | 0 ms | 256 KB | Output is correct |
14 | Correct | 3 ms | 384 KB | Output is correct |
15 | Correct | 4 ms | 256 KB | Output is correct |
16 | Correct | 3 ms | 256 KB | Output is correct |
17 | Correct | 3 ms | 384 KB | Output is correct |
18 | Correct | 1 ms | 256 KB | Output is correct |
19 | Correct | 2 ms | 384 KB | Output is correct |
20 | Correct | 3 ms | 256 KB | Output is correct |
21 | Correct | 2 ms | 384 KB | Output is correct |
22 | Correct | 2 ms | 256 KB | Output is correct |
23 | Correct | 1 ms | 256 KB | Output is correct |
24 | Correct | 2 ms | 384 KB | Output is correct |
25 | Correct | 1 ms | 384 KB | Output is correct |
26 | Correct | 2 ms | 256 KB | Output is correct |
27 | Correct | 2 ms | 384 KB | Output is correct |
28 | Correct | 2 ms | 384 KB | Output is correct |
29 | Correct | 1 ms | 384 KB | Output is correct |
30 | Correct | 2 ms | 384 KB | Output is correct |
31 | Correct | 2 ms | 384 KB | Output is correct |
32 | Correct | 2 ms | 256 KB | Output is correct |
33 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 256 KB | Output is correct |
2 | Correct | 0 ms | 256 KB | Output is correct |
3 | Correct | 0 ms | 256 KB | Output is correct |
4 | Correct | 0 ms | 256 KB | Output is correct |
5 | Correct | 0 ms | 256 KB | Output is correct |
6 | Correct | 0 ms | 256 KB | Output is correct |
7 | Correct | 0 ms | 256 KB | Output is correct |
8 | Correct | 0 ms | 256 KB | Output is correct |
9 | Correct | 0 ms | 256 KB | Output is correct |
10 | Correct | 1 ms | 256 KB | Output is correct |
11 | Correct | 0 ms | 256 KB | Output is correct |
12 | Correct | 0 ms | 256 KB | Output is correct |
13 | Correct | 0 ms | 256 KB | Output is correct |
14 | Correct | 3 ms | 384 KB | Output is correct |
15 | Correct | 4 ms | 256 KB | Output is correct |
16 | Correct | 3 ms | 256 KB | Output is correct |
17 | Correct | 3 ms | 384 KB | Output is correct |
18 | Correct | 1 ms | 256 KB | Output is correct |
19 | Correct | 2 ms | 384 KB | Output is correct |
20 | Correct | 3 ms | 256 KB | Output is correct |
21 | Correct | 2 ms | 384 KB | Output is correct |
22 | Correct | 2 ms | 256 KB | Output is correct |
23 | Correct | 1 ms | 256 KB | Output is correct |
24 | Correct | 2 ms | 384 KB | Output is correct |
25 | Correct | 1 ms | 384 KB | Output is correct |
26 | Correct | 2 ms | 256 KB | Output is correct |
27 | Correct | 2 ms | 384 KB | Output is correct |
28 | Correct | 2 ms | 384 KB | Output is correct |
29 | Correct | 1 ms | 384 KB | Output is correct |
30 | Correct | 2 ms | 384 KB | Output is correct |
31 | Correct | 2 ms | 384 KB | Output is correct |
32 | Correct | 2 ms | 256 KB | Output is correct |
33 | Correct | 2 ms | 384 KB | Output is correct |
34 | Correct | 112 ms | 384 KB | Output is correct |
35 | Correct | 115 ms | 504 KB | Output is correct |
36 | Correct | 112 ms | 428 KB | Output is correct |
37 | Correct | 101 ms | 384 KB | Output is correct |
38 | Correct | 53 ms | 384 KB | Output is correct |
39 | Correct | 61 ms | 384 KB | Output is correct |
40 | Correct | 53 ms | 504 KB | Output is correct |
41 | Correct | 51 ms | 384 KB | Output is correct |
42 | Correct | 92 ms | 384 KB | Output is correct |
43 | Correct | 58 ms | 384 KB | Output is correct |
44 | Correct | 56 ms | 424 KB | Output is correct |
45 | Correct | 61 ms | 384 KB | Output is correct |
46 | Correct | 63 ms | 384 KB | Output is correct |
47 | Correct | 65 ms | 384 KB | Output is correct |
48 | Correct | 63 ms | 384 KB | Output is correct |
49 | Correct | 53 ms | 384 KB | Output is correct |
50 | Correct | 74 ms | 384 KB | Output is correct |
51 | Correct | 63 ms | 384 KB | Output is correct |
52 | Correct | 59 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 256 KB | Output is correct |
2 | Correct | 0 ms | 256 KB | Output is correct |
3 | Correct | 0 ms | 256 KB | Output is correct |
4 | Correct | 0 ms | 256 KB | Output is correct |
5 | Correct | 0 ms | 256 KB | Output is correct |
6 | Correct | 0 ms | 256 KB | Output is correct |
7 | Correct | 0 ms | 256 KB | Output is correct |
8 | Correct | 0 ms | 256 KB | Output is correct |
9 | Correct | 0 ms | 256 KB | Output is correct |
10 | Correct | 1 ms | 256 KB | Output is correct |
11 | Correct | 0 ms | 256 KB | Output is correct |
12 | Correct | 0 ms | 256 KB | Output is correct |
13 | Correct | 0 ms | 256 KB | Output is correct |
14 | Correct | 3 ms | 384 KB | Output is correct |
15 | Correct | 4 ms | 256 KB | Output is correct |
16 | Correct | 3 ms | 256 KB | Output is correct |
17 | Correct | 3 ms | 384 KB | Output is correct |
18 | Correct | 1 ms | 256 KB | Output is correct |
19 | Correct | 2 ms | 384 KB | Output is correct |
20 | Correct | 3 ms | 256 KB | Output is correct |
21 | Correct | 2 ms | 384 KB | Output is correct |
22 | Correct | 2 ms | 256 KB | Output is correct |
23 | Correct | 1 ms | 256 KB | Output is correct |
24 | Correct | 2 ms | 384 KB | Output is correct |
25 | Correct | 1 ms | 384 KB | Output is correct |
26 | Correct | 2 ms | 256 KB | Output is correct |
27 | Correct | 2 ms | 384 KB | Output is correct |
28 | Correct | 2 ms | 384 KB | Output is correct |
29 | Correct | 1 ms | 384 KB | Output is correct |
30 | Correct | 2 ms | 384 KB | Output is correct |
31 | Correct | 2 ms | 384 KB | Output is correct |
32 | Correct | 2 ms | 256 KB | Output is correct |
33 | Correct | 2 ms | 384 KB | Output is correct |
34 | Correct | 112 ms | 384 KB | Output is correct |
35 | Correct | 115 ms | 504 KB | Output is correct |
36 | Correct | 112 ms | 428 KB | Output is correct |
37 | Correct | 101 ms | 384 KB | Output is correct |
38 | Correct | 53 ms | 384 KB | Output is correct |
39 | Correct | 61 ms | 384 KB | Output is correct |
40 | Correct | 53 ms | 504 KB | Output is correct |
41 | Correct | 51 ms | 384 KB | Output is correct |
42 | Correct | 92 ms | 384 KB | Output is correct |
43 | Correct | 58 ms | 384 KB | Output is correct |
44 | Correct | 56 ms | 424 KB | Output is correct |
45 | Correct | 61 ms | 384 KB | Output is correct |
46 | Correct | 63 ms | 384 KB | Output is correct |
47 | Correct | 65 ms | 384 KB | Output is correct |
48 | Correct | 63 ms | 384 KB | Output is correct |
49 | Correct | 53 ms | 384 KB | Output is correct |
50 | Correct | 74 ms | 384 KB | Output is correct |
51 | Correct | 63 ms | 384 KB | Output is correct |
52 | Correct | 59 ms | 384 KB | Output is correct |
53 | Runtime error | 1 ms | 512 KB | Execution killed with signal 11 |
54 | Halted | 0 ms | 0 KB | - |