# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
102140 | 2019-03-22T18:35:24 Z | MohamedAhmed0 | K개의 묶음 (IZhO14_blocks) | C++14 | 973 ms | 80848 KB |
#include <bits/stdc++.h> using namespace std ; int main() { int n , k ; scanf("%d %d" , &n , &k) ; int arr[n+1] ; for(int i = 1 ; i <= n ; ++i) scanf("%d" , &arr[i]) ; int dp[n+1][k+1] ; int chosen[n+1][k+1] ; dp[0][1] = 0 ; for(int i = 1 ; i <= n ; ++i) dp[i][1] = max(arr[i] , dp[i-1][1]) , chosen[i][1] = dp[i][1]; for(int j = 2 ; j <= k ; ++j) { stack<int>s ; for(int i = j ; i <= n ; ++i) { dp[i][j] = dp[i-1][j-1] + arr[i] ; chosen[i][j] = arr[i] ; while(s.size() > 0) { int idx = s.top() ; if(arr[idx] <= arr[i]) { if(dp[idx][j] - chosen[idx][j] + max(chosen[idx][j] , arr[i]) < dp[i][j]) { dp[i][j] = dp[idx][j] - chosen[idx][j] + max(chosen[idx][j] , arr[i]) ; } s.pop() ; } else break ; } if(s.size() > 0) { int idx = s.top() ; if(dp[idx][j] < dp[i][j]) { dp[i][j] = dp[idx][j] ; chosen[i][j] = chosen[idx][j] ; } } s.push(i) ; } } printf("%d" , dp[n][k]) ; return 0 ; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 256 KB | Output is correct |
3 | Correct | 3 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 | 2 ms | 256 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 | 256 KB | Output is correct |
11 | Correct | 3 ms | 384 KB | Output is correct |
12 | Correct | 3 ms | 384 KB | Output is correct |
13 | Correct | 2 ms | 384 KB | Output is correct |
14 | Correct | 2 ms | 384 KB | Output is correct |
15 | Correct | 2 ms | 384 KB | Output is correct |
16 | Correct | 2 ms | 384 KB | Output is correct |
17 | Correct | 3 ms | 384 KB | Output is correct |
18 | Correct | 3 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 256 KB | Output is correct |
5 | Correct | 2 ms | 384 KB | Output is correct |
6 | Correct | 2 ms | 384 KB | Output is correct |
7 | Correct | 2 ms | 384 KB | Output is correct |
8 | Correct | 2 ms | 384 KB | Output is correct |
9 | Correct | 2 ms | 384 KB | Output is correct |
10 | Correct | 2 ms | 256 KB | Output is correct |
11 | Correct | 2 ms | 256 KB | Output is correct |
12 | Correct | 2 ms | 256 KB | Output is correct |
13 | Correct | 2 ms | 256 KB | Output is correct |
14 | Correct | 3 ms | 256 KB | Output is correct |
15 | Correct | 2 ms | 256 KB | Output is correct |
16 | Correct | 3 ms | 256 KB | Output is correct |
17 | Correct | 3 ms | 300 KB | Output is correct |
18 | Correct | 2 ms | 256 KB | Output is correct |
19 | Correct | 4 ms | 320 KB | Output is correct |
20 | Correct | 2 ms | 256 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 256 KB | Output is correct |
3 | Correct | 2 ms | 256 KB | Output is correct |
4 | Correct | 2 ms | 296 KB | Output is correct |
5 | Correct | 2 ms | 256 KB | Output is correct |
6 | Correct | 2 ms | 384 KB | Output is correct |
7 | Correct | 2 ms | 384 KB | Output is correct |
8 | Correct | 2 ms | 304 KB | Output is correct |
9 | Correct | 2 ms | 256 KB | Output is correct |
10 | Correct | 2 ms | 256 KB | Output is correct |
11 | Correct | 3 ms | 256 KB | Output is correct |
12 | Correct | 2 ms | 256 KB | Output is correct |
13 | Correct | 2 ms | 384 KB | Output is correct |
14 | Correct | 2 ms | 384 KB | Output is correct |
15 | Correct | 2 ms | 384 KB | Output is correct |
16 | Correct | 2 ms | 384 KB | Output is correct |
17 | Correct | 3 ms | 384 KB | Output is correct |
18 | Correct | 2 ms | 384 KB | Output is correct |
19 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 10 ms | 2432 KB | Output is correct |
2 | Correct | 8 ms | 1152 KB | Output is correct |
3 | Correct | 14 ms | 3200 KB | Output is correct |
4 | Correct | 225 ms | 27316 KB | Output is correct |
5 | Correct | 815 ms | 79848 KB | Output is correct |
6 | Correct | 43 ms | 3832 KB | Output is correct |
7 | Correct | 300 ms | 36748 KB | Output is correct |
8 | Correct | 2 ms | 336 KB | Output is correct |
9 | Correct | 2 ms | 384 KB | Output is correct |
10 | Correct | 2 ms | 384 KB | Output is correct |
11 | Correct | 2 ms | 432 KB | Output is correct |
12 | Correct | 3 ms | 384 KB | Output is correct |
13 | Correct | 2 ms | 384 KB | Output is correct |
14 | Correct | 46 ms | 8320 KB | Output is correct |
15 | Correct | 4 ms | 640 KB | Output is correct |
16 | Correct | 15 ms | 2432 KB | Output is correct |
17 | Correct | 9 ms | 1204 KB | Output is correct |
18 | Correct | 22 ms | 3324 KB | Output is correct |
19 | Correct | 267 ms | 27356 KB | Output is correct |
20 | Correct | 973 ms | 79808 KB | Output is correct |
21 | Correct | 26 ms | 4480 KB | Output is correct |
22 | Correct | 285 ms | 37368 KB | Output is correct |
23 | Correct | 17 ms | 2944 KB | Output is correct |
24 | Correct | 45 ms | 9984 KB | Output is correct |
25 | Correct | 833 ms | 80504 KB | Output is correct |
26 | Correct | 2 ms | 384 KB | Output is correct |
27 | Correct | 3 ms | 384 KB | Output is correct |
28 | Correct | 34 ms | 8320 KB | Output is correct |
29 | Correct | 5 ms | 640 KB | Output is correct |
30 | Correct | 8 ms | 2432 KB | Output is correct |
31 | Correct | 9 ms | 1536 KB | Output is correct |
32 | Correct | 14 ms | 3584 KB | Output is correct |
33 | Correct | 215 ms | 27648 KB | Output is correct |
34 | Correct | 867 ms | 80848 KB | Output is correct |
35 | Correct | 25 ms | 4716 KB | Output is correct |
36 | Correct | 308 ms | 37636 KB | Output is correct |
37 | Correct | 5 ms | 640 KB | Output is correct |
38 | Correct | 45 ms | 8320 KB | Output is correct |
39 | Correct | 3 ms | 380 KB | Output is correct |
40 | Correct | 2 ms | 384 KB | Output is correct |
41 | Correct | 2 ms | 256 KB | Output is correct |
42 | Correct | 3 ms | 256 KB | Output is correct |