# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
117789 | 2019-06-17T07:59:13 Z | 이온조(#2879) | Tenis (COI19_tenis) | C++14 | 500 ms | 5880 KB |
#include <bits/stdc++.h> using namespace std; using tiii = tuple<int, int, int>; const int MXN = 100009; struct player { int id, x, y, z; } A[MXN]; int X[MXN], Y[MXN], Z[MXN]; int yl[MXN], yr[MXN], zl[MXN], zr[MXN]; int Ri[MXN]; int main() { int N, Q; scanf("%d%d",&N,&Q); for(int i=1; i<=N; i++) {scanf("%d",&X[i]); A[X[i]].x = i;} for(int i=1; i<=N; i++) {scanf("%d",&Y[i]); A[Y[i]].y = i;} for(int i=1; i<=N; i++) {scanf("%d",&Z[i]); A[Z[i]].z = i;} for(int i=1; i<=N; i++) A[i].id = i; sort(A+1, A+N+1, [&](player P, player Q) {return P.x < Q.x;}); yr[N+1] = 1e9, zr[N+1] = 1e9; for(int i=1; i<=N; i++) yl[i] = max(yl[i-1], A[i].y), zl[i] = max(zl[i-1], A[i].z); for(int i=N; i>=1; i--) yr[i] = min(yr[i+1], A[i].y), zr[i] = min(zr[i+1], A[i].z); int l = N; for(int i=1; i<N; i++) if(yl[i] < yr[i+1] && zl[i] < zr[i+1]) {l = i; break;} for(int i=1; i<=N; i++) Ri[A[i].id] = A[i].x; while(Q--) { int ty; scanf("%d", &ty); if(ty == 1) { int x; scanf("%d", &x); if(Ri[x] <= l) puts("DA"); else puts("NE"); } if(ty == 2) { int P, a, b; scanf("%d%d%d",&P,&a,&b); if(P == 1) swap(Ri[a], Ri[b]); a = Ri[a], b = Ri[b]; if(P == 1) { swap(A[a].y, A[b].y); swap(A[a].z, A[b].z); swap(A[a].id, A[b].id); } if(P == 2) swap(A[a].y, A[b].y); if(P == 3) swap(A[a].z, A[b].z); yr[N+1] = 1e9, zr[N+1] = 1e9; for(int i=1; i<=N; i++) yl[i] = max(yl[i-1], A[i].y), zl[i] = max(zl[i-1], A[i].z); for(int i=N; i>=1; i--) yr[i] = min(yr[i+1], A[i].y), zr[i] = min(zr[i+1], A[i].z); l = N; for(int i=1; i<N; i++) if(yl[i] < yr[i+1] && zl[i] < zr[i+1]) {l = i; break;} } } return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 3 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 3 ms | 384 KB | Output is correct |
6 | Correct | 3 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 3 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 3 ms | 384 KB | Output is correct |
6 | Correct | 3 ms | 384 KB | Output is correct |
7 | Correct | 3 ms | 384 KB | Output is correct |
8 | Correct | 3 ms | 384 KB | Output is correct |
9 | Correct | 3 ms | 384 KB | Output is correct |
10 | Correct | 2 ms | 384 KB | Output is correct |
11 | Correct | 2 ms | 384 KB | Output is correct |
12 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 3 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 3 ms | 384 KB | Output is correct |
6 | Correct | 3 ms | 384 KB | Output is correct |
7 | Correct | 3 ms | 384 KB | Output is correct |
8 | Correct | 3 ms | 384 KB | Output is correct |
9 | Correct | 3 ms | 384 KB | Output is correct |
10 | Correct | 2 ms | 384 KB | Output is correct |
11 | Correct | 2 ms | 384 KB | Output is correct |
12 | Correct | 2 ms | 384 KB | Output is correct |
13 | Correct | 72 ms | 5368 KB | Output is correct |
14 | Correct | 74 ms | 5240 KB | Output is correct |
15 | Correct | 69 ms | 5304 KB | Output is correct |
16 | Correct | 73 ms | 5368 KB | Output is correct |
17 | Correct | 67 ms | 5240 KB | Output is correct |
18 | Correct | 73 ms | 5240 KB | Output is correct |
19 | Correct | 76 ms | 5188 KB | Output is correct |
20 | Correct | 73 ms | 5112 KB | Output is correct |
21 | Correct | 67 ms | 5112 KB | Output is correct |
22 | Correct | 65 ms | 5112 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 81 ms | 5752 KB | Output is correct |
2 | Correct | 88 ms | 5624 KB | Output is correct |
3 | Correct | 92 ms | 5588 KB | Output is correct |
4 | Correct | 75 ms | 5700 KB | Output is correct |
5 | Correct | 105 ms | 5624 KB | Output is correct |
6 | Correct | 78 ms | 5624 KB | Output is correct |
7 | Correct | 98 ms | 5624 KB | Output is correct |
8 | Correct | 91 ms | 5880 KB | Output is correct |
9 | Correct | 86 ms | 5624 KB | Output is correct |
10 | Correct | 92 ms | 5752 KB | Output is correct |
11 | Correct | 93 ms | 5740 KB | Output is correct |
12 | Correct | 89 ms | 5672 KB | Output is correct |
13 | Correct | 91 ms | 5624 KB | Output is correct |
14 | Correct | 88 ms | 5636 KB | Output is correct |
15 | Correct | 84 ms | 5620 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 3 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 3 ms | 384 KB | Output is correct |
6 | Correct | 3 ms | 384 KB | Output is correct |
7 | Correct | 3 ms | 384 KB | Output is correct |
8 | Correct | 3 ms | 384 KB | Output is correct |
9 | Correct | 3 ms | 384 KB | Output is correct |
10 | Correct | 2 ms | 384 KB | Output is correct |
11 | Correct | 2 ms | 384 KB | Output is correct |
12 | Correct | 2 ms | 384 KB | Output is correct |
13 | Correct | 72 ms | 5368 KB | Output is correct |
14 | Correct | 74 ms | 5240 KB | Output is correct |
15 | Correct | 69 ms | 5304 KB | Output is correct |
16 | Correct | 73 ms | 5368 KB | Output is correct |
17 | Correct | 67 ms | 5240 KB | Output is correct |
18 | Correct | 73 ms | 5240 KB | Output is correct |
19 | Correct | 76 ms | 5188 KB | Output is correct |
20 | Correct | 73 ms | 5112 KB | Output is correct |
21 | Correct | 67 ms | 5112 KB | Output is correct |
22 | Correct | 65 ms | 5112 KB | Output is correct |
23 | Correct | 81 ms | 5752 KB | Output is correct |
24 | Correct | 88 ms | 5624 KB | Output is correct |
25 | Correct | 92 ms | 5588 KB | Output is correct |
26 | Correct | 75 ms | 5700 KB | Output is correct |
27 | Correct | 105 ms | 5624 KB | Output is correct |
28 | Correct | 78 ms | 5624 KB | Output is correct |
29 | Correct | 98 ms | 5624 KB | Output is correct |
30 | Correct | 91 ms | 5880 KB | Output is correct |
31 | Correct | 86 ms | 5624 KB | Output is correct |
32 | Correct | 92 ms | 5752 KB | Output is correct |
33 | Correct | 93 ms | 5740 KB | Output is correct |
34 | Correct | 89 ms | 5672 KB | Output is correct |
35 | Correct | 91 ms | 5624 KB | Output is correct |
36 | Correct | 88 ms | 5636 KB | Output is correct |
37 | Correct | 84 ms | 5620 KB | Output is correct |
38 | Execution timed out | 1059 ms | 5164 KB | Time limit exceeded |
39 | Halted | 0 ms | 0 KB | - |