# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
38276 | 2018-01-03T11:02:59 Z | Talant | Longest beautiful sequence (IZhO17_subsequence) | C++14 | 5506 ms | 108060 KB |
#include <bits/stdc++.h> #define fr first #define sc second #define OK puts("OK"); #define pb push_back #define mk make_pair using namespace std; typedef long long ll; const ll inf = (ll)1e9 + 7; const int N = (int)1e6 + 1; const int M = (int)1024; int n; int a[N],b[N],bit[N]; int m = 0; pair<int,int> dp[1025][1025][11]; int p[N]; int nn; int main () { scanf ("%d", &n); for (int i = 1; i <= n; i ++) scanf ("%d", &a[i]); for (int j = 1; j <= n; j ++) scanf ("%d", &b[j]); for (int i = 0; i <= M; i ++) bit[i] = __builtin_popcount(i); for (int i = 1; i <= n; i ++) { int pr = (a[i] >> 10),sf = (a[i] % M),mx = 1,id = -1; for (int j = 0; j < M; j ++) { int cnt = b[i] - bit[j & pr]; if (cnt < 0 || cnt > 10) continue; if (mx < dp[j][sf][cnt].fr + 1) mx = dp[j][sf][cnt].fr + 1,id = dp[j][sf][cnt].sc; } p[i] = id; for (int j = 0; j < M; j ++) { int cnt = bit[j & sf]; if (dp[pr][j][cnt].fr < mx) dp[pr][j][cnt] = mk(mx,i); } if (m < mx) m = mx,nn = i; } cout << m << endl; deque <int> dq; while (nn != -1) { dq.push_front(nn); nn = p[nn]; } for (int i = 0; i < dq.size(); i ++) cout << dq[i] << " "; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 107928 KB | answer = 4 |
2 | Correct | 0 ms | 107928 KB | answer = 1 |
3 | Correct | 0 ms | 107928 KB | answer = 2 |
4 | Correct | 0 ms | 107928 KB | answer = 1 |
5 | Correct | 0 ms | 107928 KB | answer = 2 |
6 | Correct | 0 ms | 107928 KB | answer = 1 |
7 | Correct | 0 ms | 107928 KB | answer = 1 |
8 | Correct | 0 ms | 107928 KB | answer = 3 |
9 | Correct | 3 ms | 107928 KB | answer = 2 |
10 | Correct | 0 ms | 107928 KB | answer = 3 |
11 | Correct | 0 ms | 107928 KB | answer = 2 |
12 | Correct | 3 ms | 107928 KB | answer = 3 |
13 | Correct | 0 ms | 107928 KB | answer = 2 |
14 | Correct | 6 ms | 107928 KB | answer = 1 |
15 | Correct | 0 ms | 107928 KB | answer = 1 |
16 | Correct | 6 ms | 107928 KB | answer = 1 |
17 | Correct | 6 ms | 107928 KB | answer = 1 |
18 | Correct | 3 ms | 107928 KB | answer = 1 |
19 | Correct | 3 ms | 107928 KB | answer = 1 |
20 | Correct | 3 ms | 107928 KB | answer = 1 |
21 | Correct | 0 ms | 107928 KB | answer = 1 |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 107928 KB | answer = 4 |
2 | Correct | 0 ms | 107928 KB | answer = 1 |
3 | Correct | 0 ms | 107928 KB | answer = 2 |
4 | Correct | 0 ms | 107928 KB | answer = 1 |
5 | Correct | 0 ms | 107928 KB | answer = 2 |
6 | Correct | 0 ms | 107928 KB | answer = 1 |
7 | Correct | 0 ms | 107928 KB | answer = 1 |
8 | Correct | 0 ms | 107928 KB | answer = 3 |
9 | Correct | 3 ms | 107928 KB | answer = 2 |
10 | Correct | 0 ms | 107928 KB | answer = 3 |
11 | Correct | 0 ms | 107928 KB | answer = 2 |
12 | Correct | 3 ms | 107928 KB | answer = 3 |
13 | Correct | 0 ms | 107928 KB | answer = 2 |
14 | Correct | 6 ms | 107928 KB | answer = 1 |
15 | Correct | 0 ms | 107928 KB | answer = 1 |
16 | Correct | 6 ms | 107928 KB | answer = 1 |
17 | Correct | 6 ms | 107928 KB | answer = 1 |
18 | Correct | 3 ms | 107928 KB | answer = 1 |
19 | Correct | 3 ms | 107928 KB | answer = 1 |
20 | Correct | 3 ms | 107928 KB | answer = 1 |
21 | Correct | 0 ms | 107928 KB | answer = 1 |
22 | Correct | 176 ms | 107928 KB | answer = 358 |
23 | Correct | 189 ms | 107928 KB | answer = 336 |
24 | Correct | 159 ms | 107928 KB | answer = 339 |
25 | Correct | 186 ms | 107928 KB | answer = 357 |
26 | Correct | 166 ms | 107928 KB | answer = 354 |
27 | Correct | 189 ms | 107928 KB | answer = 333 |
28 | Correct | 166 ms | 107928 KB | answer = 314 |
29 | Correct | 173 ms | 107928 KB | answer = 322 |
30 | Correct | 183 ms | 107928 KB | answer = 339 |
31 | Correct | 203 ms | 107928 KB | answer = 351 |
32 | Correct | 276 ms | 107928 KB | answer = 1 |
33 | Correct | 253 ms | 107928 KB | answer = 1 |
34 | Correct | 219 ms | 107928 KB | answer = 1 |
35 | Correct | 246 ms | 107928 KB | answer = 1 |
36 | Correct | 209 ms | 107928 KB | answer = 1 |
37 | Correct | 46 ms | 107928 KB | answer = 1 |
38 | Correct | 53 ms | 107928 KB | answer = 1 |
39 | Correct | 56 ms | 107928 KB | answer = 1 |
40 | Correct | 49 ms | 107928 KB | answer = 1 |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 107928 KB | answer = 4 |
2 | Correct | 0 ms | 107928 KB | answer = 1 |
3 | Correct | 0 ms | 107928 KB | answer = 2 |
4 | Correct | 0 ms | 107928 KB | answer = 1 |
5 | Correct | 0 ms | 107928 KB | answer = 2 |
6 | Correct | 0 ms | 107928 KB | answer = 1 |
7 | Correct | 0 ms | 107928 KB | answer = 1 |
8 | Correct | 0 ms | 107928 KB | answer = 3 |
9 | Correct | 3 ms | 107928 KB | answer = 2 |
10 | Correct | 0 ms | 107928 KB | answer = 3 |
11 | Correct | 0 ms | 107928 KB | answer = 2 |
12 | Correct | 3 ms | 107928 KB | answer = 3 |
13 | Correct | 0 ms | 107928 KB | answer = 2 |
14 | Correct | 6 ms | 107928 KB | answer = 1 |
15 | Correct | 0 ms | 107928 KB | answer = 1 |
16 | Correct | 6 ms | 107928 KB | answer = 1 |
17 | Correct | 6 ms | 107928 KB | answer = 1 |
18 | Correct | 3 ms | 107928 KB | answer = 1 |
19 | Correct | 3 ms | 107928 KB | answer = 1 |
20 | Correct | 3 ms | 107928 KB | answer = 1 |
21 | Correct | 0 ms | 107928 KB | answer = 1 |
22 | Correct | 176 ms | 107928 KB | answer = 358 |
23 | Correct | 189 ms | 107928 KB | answer = 336 |
24 | Correct | 159 ms | 107928 KB | answer = 339 |
25 | Correct | 186 ms | 107928 KB | answer = 357 |
26 | Correct | 166 ms | 107928 KB | answer = 354 |
27 | Correct | 189 ms | 107928 KB | answer = 333 |
28 | Correct | 166 ms | 107928 KB | answer = 314 |
29 | Correct | 173 ms | 107928 KB | answer = 322 |
30 | Correct | 183 ms | 107928 KB | answer = 339 |
31 | Correct | 203 ms | 107928 KB | answer = 351 |
32 | Correct | 276 ms | 107928 KB | answer = 1 |
33 | Correct | 253 ms | 107928 KB | answer = 1 |
34 | Correct | 219 ms | 107928 KB | answer = 1 |
35 | Correct | 246 ms | 107928 KB | answer = 1 |
36 | Correct | 209 ms | 107928 KB | answer = 1 |
37 | Correct | 46 ms | 107928 KB | answer = 1 |
38 | Correct | 53 ms | 107928 KB | answer = 1 |
39 | Correct | 56 ms | 107928 KB | answer = 1 |
40 | Correct | 49 ms | 107928 KB | answer = 1 |
41 | Correct | 959 ms | 107928 KB | answer = 6296 |
42 | Correct | 1053 ms | 107928 KB | answer = 6267 |
43 | Correct | 1012 ms | 107928 KB | answer = 6264 |
44 | Correct | 1059 ms | 107928 KB | answer = 6384 |
45 | Correct | 1002 ms | 107928 KB | answer = 6272 |
46 | Correct | 1049 ms | 107928 KB | answer = 6177 |
47 | Correct | 1063 ms | 107928 KB | answer = 6144 |
48 | Correct | 1018 ms | 107928 KB | answer = 6272 |
49 | Correct | 973 ms | 107928 KB | answer = 6241 |
50 | Correct | 966 ms | 107928 KB | answer = 6169 |
51 | Correct | 353 ms | 107928 KB | answer = 1 |
52 | Correct | 349 ms | 107928 KB | answer = 1 |
53 | Correct | 379 ms | 107928 KB | answer = 1 |
54 | Correct | 396 ms | 107928 KB | answer = 1 |
55 | Correct | 406 ms | 107928 KB | answer = 1 |
56 | Correct | 826 ms | 107928 KB | answer = 1426 |
57 | Correct | 846 ms | 107928 KB | answer = 1427 |
58 | Correct | 969 ms | 107928 KB | answer = 1428 |
59 | Correct | 963 ms | 107928 KB | answer = 1427 |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 107928 KB | answer = 4 |
2 | Correct | 0 ms | 107928 KB | answer = 1 |
3 | Correct | 0 ms | 107928 KB | answer = 2 |
4 | Correct | 0 ms | 107928 KB | answer = 1 |
5 | Correct | 0 ms | 107928 KB | answer = 2 |
6 | Correct | 0 ms | 107928 KB | answer = 1 |
7 | Correct | 0 ms | 107928 KB | answer = 1 |
8 | Correct | 0 ms | 107928 KB | answer = 3 |
9 | Correct | 3 ms | 107928 KB | answer = 2 |
10 | Correct | 0 ms | 107928 KB | answer = 3 |
11 | Correct | 0 ms | 107928 KB | answer = 2 |
12 | Correct | 3 ms | 107928 KB | answer = 3 |
13 | Correct | 0 ms | 107928 KB | answer = 2 |
14 | Correct | 6 ms | 107928 KB | answer = 1 |
15 | Correct | 0 ms | 107928 KB | answer = 1 |
16 | Correct | 6 ms | 107928 KB | answer = 1 |
17 | Correct | 6 ms | 107928 KB | answer = 1 |
18 | Correct | 3 ms | 107928 KB | answer = 1 |
19 | Correct | 3 ms | 107928 KB | answer = 1 |
20 | Correct | 3 ms | 107928 KB | answer = 1 |
21 | Correct | 0 ms | 107928 KB | answer = 1 |
22 | Correct | 176 ms | 107928 KB | answer = 358 |
23 | Correct | 189 ms | 107928 KB | answer = 336 |
24 | Correct | 159 ms | 107928 KB | answer = 339 |
25 | Correct | 186 ms | 107928 KB | answer = 357 |
26 | Correct | 166 ms | 107928 KB | answer = 354 |
27 | Correct | 189 ms | 107928 KB | answer = 333 |
28 | Correct | 166 ms | 107928 KB | answer = 314 |
29 | Correct | 173 ms | 107928 KB | answer = 322 |
30 | Correct | 183 ms | 107928 KB | answer = 339 |
31 | Correct | 203 ms | 107928 KB | answer = 351 |
32 | Correct | 276 ms | 107928 KB | answer = 1 |
33 | Correct | 253 ms | 107928 KB | answer = 1 |
34 | Correct | 219 ms | 107928 KB | answer = 1 |
35 | Correct | 246 ms | 107928 KB | answer = 1 |
36 | Correct | 209 ms | 107928 KB | answer = 1 |
37 | Correct | 46 ms | 107928 KB | answer = 1 |
38 | Correct | 53 ms | 107928 KB | answer = 1 |
39 | Correct | 56 ms | 107928 KB | answer = 1 |
40 | Correct | 49 ms | 107928 KB | answer = 1 |
41 | Correct | 959 ms | 107928 KB | answer = 6296 |
42 | Correct | 1053 ms | 107928 KB | answer = 6267 |
43 | Correct | 1012 ms | 107928 KB | answer = 6264 |
44 | Correct | 1059 ms | 107928 KB | answer = 6384 |
45 | Correct | 1002 ms | 107928 KB | answer = 6272 |
46 | Correct | 1049 ms | 107928 KB | answer = 6177 |
47 | Correct | 1063 ms | 107928 KB | answer = 6144 |
48 | Correct | 1018 ms | 107928 KB | answer = 6272 |
49 | Correct | 973 ms | 107928 KB | answer = 6241 |
50 | Correct | 966 ms | 107928 KB | answer = 6169 |
51 | Correct | 353 ms | 107928 KB | answer = 1 |
52 | Correct | 349 ms | 107928 KB | answer = 1 |
53 | Correct | 379 ms | 107928 KB | answer = 1 |
54 | Correct | 396 ms | 107928 KB | answer = 1 |
55 | Correct | 406 ms | 107928 KB | answer = 1 |
56 | Correct | 826 ms | 107928 KB | answer = 1426 |
57 | Correct | 846 ms | 107928 KB | answer = 1427 |
58 | Correct | 969 ms | 107928 KB | answer = 1428 |
59 | Correct | 963 ms | 107928 KB | answer = 1427 |
60 | Correct | 3739 ms | 107928 KB | answer = 7034 |
61 | Correct | 3839 ms | 107928 KB | answer = 7045 |
62 | Correct | 3733 ms | 107928 KB | answer = 7147 |
63 | Correct | 3713 ms | 107928 KB | answer = 7038 |
64 | Correct | 3679 ms | 107928 KB | answer = 7169 |
65 | Correct | 3703 ms | 107928 KB | answer = 6735 |
66 | Correct | 3736 ms | 107928 KB | answer = 6713 |
67 | Correct | 3659 ms | 107928 KB | answer = 6748 |
68 | Correct | 3729 ms | 107928 KB | answer = 6607 |
69 | Correct | 3799 ms | 107928 KB | answer = 6722 |
70 | Correct | 5506 ms | 107928 KB | answer = 1 |
71 | Correct | 5499 ms | 107928 KB | answer = 1 |
72 | Correct | 5206 ms | 107928 KB | answer = 1 |
73 | Correct | 5229 ms | 107928 KB | answer = 1 |
74 | Correct | 5393 ms | 107928 KB | answer = 1 |
75 | Correct | 1616 ms | 107928 KB | answer = 1 |
76 | Correct | 1596 ms | 107928 KB | answer = 1 |
77 | Correct | 1729 ms | 107928 KB | answer = 1 |
78 | Correct | 1586 ms | 107928 KB | answer = 1 |
79 | Correct | 1919 ms | 107928 KB | answer = 21 |
80 | Correct | 2396 ms | 107928 KB | answer = 7 |
81 | Correct | 2823 ms | 107928 KB | answer = 3 |
82 | Correct | 2569 ms | 107928 KB | answer = 2 |
83 | Correct | 2233 ms | 107928 KB | answer = 1 |
84 | Correct | 1916 ms | 107928 KB | answer = 1 |
85 | Correct | 1456 ms | 107928 KB | answer = 1 |
86 | Correct | 2069 ms | 107928 KB | answer = 11 |
87 | Correct | 2723 ms | 107928 KB | answer = 11 |
88 | Correct | 3019 ms | 107928 KB | answer = 6 |
89 | Correct | 2833 ms | 107928 KB | answer = 4 |
90 | Correct | 2109 ms | 107928 KB | answer = 2 |
91 | Correct | 1813 ms | 107928 KB | answer = 2 |
92 | Correct | 1723 ms | 107928 KB | answer = 2 |
93 | Correct | 3786 ms | 107928 KB | answer = 7211 |
94 | Correct | 3879 ms | 107928 KB | answer = 7032 |
95 | Correct | 3786 ms | 107928 KB | answer = 7092 |
96 | Correct | 4759 ms | 108060 KB | answer = 14167 |
97 | Correct | 4596 ms | 108060 KB | answer = 14159 |
98 | Correct | 4393 ms | 108060 KB | answer = 14125 |
99 | Correct | 4453 ms | 108060 KB | answer = 14121 |
100 | Correct | 4639 ms | 108060 KB | answer = 14010 |
101 | Correct | 4563 ms | 108060 KB | answer = 13976 |
102 | Correct | 1489 ms | 107928 KB | answer = 3 |
103 | Correct | 1836 ms | 107928 KB | answer = 2 |
104 | Correct | 2179 ms | 107928 KB | answer = 3 |
105 | Correct | 1589 ms | 107928 KB | answer = 2 |
106 | Correct | 1573 ms | 107928 KB | answer = 3 |
107 | Correct | 1783 ms | 107928 KB | answer = 4 |
108 | Correct | 1653 ms | 107928 KB | answer = 5 |
109 | Correct | 1219 ms | 107928 KB | answer = 8 |
110 | Correct | 796 ms | 107928 KB | answer = 22 |
111 | Correct | 3489 ms | 107928 KB | answer = 6760 |
112 | Correct | 3796 ms | 107928 KB | answer = 6788 |
113 | Correct | 3716 ms | 107928 KB | answer = 6632 |