Submission #634105

# Submission time Handle Problem Language Result Execution time Memory
634105 2022-08-23T20:04:48 Z tvladm2009 Bali Sculptures (APIO15_sculpture) C++14
25 / 100
750 ms 262148 KB
#include <iostream>
#include <algorithm>
#include <vector>
#define int long long

using namespace std;

const int MAX_N = 2 * 1e3;
const int INF = (1LL << 60);
const int MAX_L = 11;
int y[MAX_N + 1], range[MAX_N + 1][MAX_N + 1];
vector<int> dp[MAX_N + 1][MAX_N + 1];
int n, a, b;

signed main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin >> n >> a >> b;
    for (int i = 1; i <= n; i++) {
        cin >> y[i];
        range[i][i] = y[i];
    }
    for (int i = 1; i <= n; i++) {
        for (int j = i + 1; j <= n; j++) {
            range[i][j] = range[i][j - 1] + y[j];
        }
    }
    for (int i = 0; i <= n; i++) {
        for (int j = 0; j <= n; j++) {
            dp[i][j].push_back(INF);
        }
    }
    dp[0][0].push_back(0);
    int mx = 0;
    for (int i = 1; i <= n; i++) {
        int cnt = 0;
        for (int j = 1; j <= n; j++) {
            for (int k = 1; k <= i; k++) {
                for (int l = 0; l < dp[k - 1][j - 1].size(); l++) {
                    dp[i][j].push_back(dp[k - 1][j - 1][l] | range[k][i]);
                    cnt++;
                }
            }
            sort(dp[i][j].begin(), dp[i][j].end());
            auto last = unique(dp[i][j].begin(), dp[i][j].end());
            dp[i][j].erase(last, dp[i][j].end());
        }
        mx = max(mx, cnt);
    }
    int answer = INF;
    for (int i = a; i <= b; i++) {
        for (int it : dp[n][i]) {
            answer = min(answer, it);
        }
    }
    cout << answer;
    return 0;
}
/*
20 1 3
9 9 8 8 10 8 8 8 8 9 9 8 8 8 9 8 10 8 9 8


*/

Compilation message

sculpture.cpp: In function 'int main()':
sculpture.cpp:40:35: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   40 |                 for (int l = 0; l < dp[k - 1][j - 1].size(); l++) {
      |                                 ~~^~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 43 ms 94284 KB Output is correct
2 Correct 45 ms 94332 KB Output is correct
3 Correct 43 ms 94220 KB Output is correct
4 Correct 44 ms 94284 KB Output is correct
5 Correct 43 ms 94416 KB Output is correct
6 Correct 47 ms 94540 KB Output is correct
7 Correct 46 ms 94728 KB Output is correct
8 Correct 46 ms 94924 KB Output is correct
9 Correct 48 ms 95224 KB Output is correct
10 Correct 46 ms 94924 KB Output is correct
11 Correct 45 ms 94948 KB Output is correct
12 Correct 45 ms 94872 KB Output is correct
13 Correct 45 ms 94996 KB Output is correct
14 Correct 52 ms 94292 KB Output is correct
15 Correct 48 ms 94360 KB Output is correct
16 Correct 45 ms 94388 KB Output is correct
17 Correct 45 ms 94292 KB Output is correct
18 Correct 43 ms 94392 KB Output is correct
19 Correct 42 ms 94540 KB Output is correct
20 Correct 44 ms 94804 KB Output is correct
21 Correct 45 ms 95140 KB Output is correct
22 Correct 47 ms 95216 KB Output is correct
23 Correct 46 ms 94924 KB Output is correct
24 Correct 55 ms 94892 KB Output is correct
25 Correct 45 ms 94924 KB Output is correct
26 Correct 45 ms 94996 KB Output is correct
27 Correct 43 ms 94328 KB Output is correct
28 Correct 44 ms 94440 KB Output is correct
29 Correct 46 ms 94952 KB Output is correct
30 Correct 74 ms 100676 KB Output is correct
31 Correct 49 ms 95744 KB Output is correct
32 Correct 51 ms 95760 KB Output is correct
33 Correct 46 ms 94924 KB Output is correct
34 Correct 47 ms 94856 KB Output is correct
35 Correct 47 ms 94704 KB Output is correct
36 Correct 47 ms 94764 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 44 ms 94360 KB Output is correct
2 Correct 46 ms 94344 KB Output is correct
3 Correct 49 ms 94228 KB Output is correct
4 Correct 47 ms 94340 KB Output is correct
5 Correct 45 ms 94348 KB Output is correct
6 Correct 45 ms 94564 KB Output is correct
7 Correct 45 ms 94804 KB Output is correct
8 Correct 46 ms 94940 KB Output is correct
9 Correct 46 ms 95192 KB Output is correct
10 Correct 45 ms 94924 KB Output is correct
11 Correct 51 ms 95032 KB Output is correct
12 Correct 46 ms 94920 KB Output is correct
13 Correct 46 ms 94976 KB Output is correct
14 Correct 44 ms 94284 KB Output is correct
15 Correct 44 ms 94284 KB Output is correct
16 Correct 44 ms 94292 KB Output is correct
17 Correct 43 ms 94312 KB Output is correct
18 Correct 44 ms 94412 KB Output is correct
19 Correct 52 ms 94552 KB Output is correct
20 Correct 46 ms 94824 KB Output is correct
21 Correct 46 ms 95064 KB Output is correct
22 Correct 45 ms 95232 KB Output is correct
23 Correct 46 ms 94980 KB Output is correct
24 Correct 46 ms 94932 KB Output is correct
25 Correct 47 ms 94908 KB Output is correct
26 Correct 48 ms 95052 KB Output is correct
27 Correct 47 ms 95244 KB Output is correct
28 Correct 50 ms 96108 KB Output is correct
29 Correct 81 ms 104780 KB Output is correct
30 Correct 92 ms 108560 KB Output is correct
31 Correct 195 ms 135576 KB Output is correct
32 Correct 136 ms 120460 KB Output is correct
33 Correct 134 ms 120428 KB Output is correct
34 Correct 137 ms 121884 KB Output is correct
35 Correct 157 ms 125828 KB Output is correct
36 Correct 163 ms 126372 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 43 ms 94356 KB Output is correct
2 Correct 45 ms 94288 KB Output is correct
3 Correct 44 ms 94324 KB Output is correct
4 Correct 51 ms 94256 KB Output is correct
5 Correct 52 ms 94420 KB Output is correct
6 Correct 42 ms 94540 KB Output is correct
7 Correct 44 ms 94732 KB Output is correct
8 Correct 45 ms 94948 KB Output is correct
9 Correct 45 ms 95140 KB Output is correct
10 Correct 44 ms 94952 KB Output is correct
11 Correct 45 ms 94868 KB Output is correct
12 Correct 45 ms 94944 KB Output is correct
13 Correct 46 ms 94924 KB Output is correct
14 Correct 55 ms 95220 KB Output is correct
15 Correct 48 ms 96072 KB Output is correct
16 Correct 78 ms 104788 KB Output is correct
17 Correct 91 ms 108644 KB Output is correct
18 Correct 210 ms 135612 KB Output is correct
19 Correct 137 ms 120468 KB Output is correct
20 Correct 134 ms 120372 KB Output is correct
21 Correct 139 ms 122060 KB Output is correct
22 Correct 171 ms 125908 KB Output is correct
23 Correct 157 ms 126352 KB Output is correct
24 Correct 213 ms 137784 KB Output is correct
25 Correct 513 ms 210808 KB Output is correct
26 Runtime error 750 ms 262148 KB Execution killed with signal 9
27 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 49 ms 94272 KB Output is correct
2 Correct 44 ms 94388 KB Output is correct
3 Correct 44 ms 94336 KB Output is correct
4 Correct 51 ms 94280 KB Output is correct
5 Correct 46 ms 94424 KB Output is correct
6 Correct 45 ms 94464 KB Output is correct
7 Correct 47 ms 94712 KB Output is correct
8 Correct 46 ms 94928 KB Output is correct
9 Correct 49 ms 95128 KB Output is correct
10 Correct 48 ms 94996 KB Output is correct
11 Correct 58 ms 94896 KB Output is correct
12 Correct 46 ms 94916 KB Output is correct
13 Correct 47 ms 94948 KB Output is correct
14 Correct 53 ms 94304 KB Output is correct
15 Correct 52 ms 94280 KB Output is correct
16 Correct 50 ms 94256 KB Output is correct
17 Correct 46 ms 94544 KB Output is correct
18 Correct 43 ms 94388 KB Output is correct
19 Correct 44 ms 94548 KB Output is correct
20 Correct 45 ms 94836 KB Output is correct
21 Correct 45 ms 95048 KB Output is correct
22 Correct 47 ms 95220 KB Output is correct
23 Correct 46 ms 94960 KB Output is correct
24 Correct 50 ms 94944 KB Output is correct
25 Correct 48 ms 94912 KB Output is correct
26 Correct 47 ms 95000 KB Output is correct
27 Correct 44 ms 94336 KB Output is correct
28 Correct 45 ms 94496 KB Output is correct
29 Correct 46 ms 95000 KB Output is correct
30 Correct 77 ms 100644 KB Output is correct
31 Correct 53 ms 95700 KB Output is correct
32 Correct 49 ms 95744 KB Output is correct
33 Correct 49 ms 94952 KB Output is correct
34 Correct 49 ms 94964 KB Output is correct
35 Correct 44 ms 94700 KB Output is correct
36 Correct 45 ms 94680 KB Output is correct
37 Correct 49 ms 95228 KB Output is correct
38 Correct 52 ms 96148 KB Output is correct
39 Correct 79 ms 104780 KB Output is correct
40 Correct 96 ms 108644 KB Output is correct
41 Correct 208 ms 135628 KB Output is correct
42 Correct 136 ms 120476 KB Output is correct
43 Correct 136 ms 120448 KB Output is correct
44 Correct 147 ms 121956 KB Output is correct
45 Correct 156 ms 125900 KB Output is correct
46 Correct 156 ms 126156 KB Output is correct
47 Correct 210 ms 137760 KB Output is correct
48 Correct 510 ms 210880 KB Output is correct
49 Runtime error 714 ms 262144 KB Execution killed with signal 9
50 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 45 ms 94384 KB Output is correct
2 Correct 45 ms 94388 KB Output is correct
3 Correct 45 ms 94324 KB Output is correct
4 Correct 45 ms 94304 KB Output is correct
5 Correct 53 ms 94376 KB Output is correct
6 Correct 52 ms 94500 KB Output is correct
7 Correct 55 ms 94732 KB Output is correct
8 Correct 51 ms 94924 KB Output is correct
9 Correct 50 ms 95112 KB Output is correct
10 Correct 47 ms 94884 KB Output is correct
11 Correct 46 ms 94896 KB Output is correct
12 Correct 47 ms 95004 KB Output is correct
13 Correct 54 ms 94924 KB Output is correct
14 Correct 47 ms 94356 KB Output is correct
15 Correct 46 ms 94420 KB Output is correct
16 Correct 48 ms 94940 KB Output is correct
17 Correct 75 ms 100572 KB Output is correct
18 Correct 52 ms 95756 KB Output is correct
19 Correct 49 ms 95680 KB Output is correct
20 Correct 47 ms 94936 KB Output is correct
21 Correct 46 ms 94956 KB Output is correct
22 Correct 46 ms 94696 KB Output is correct
23 Correct 47 ms 94796 KB Output is correct
24 Correct 48 ms 95152 KB Output is correct
25 Correct 51 ms 96180 KB Output is correct
26 Correct 81 ms 104676 KB Output is correct
27 Correct 93 ms 108616 KB Output is correct
28 Correct 199 ms 135632 KB Output is correct
29 Correct 142 ms 120444 KB Output is correct
30 Correct 135 ms 120540 KB Output is correct
31 Correct 138 ms 121892 KB Output is correct
32 Correct 155 ms 125896 KB Output is correct
33 Correct 159 ms 126216 KB Output is correct
34 Correct 215 ms 137764 KB Output is correct
35 Correct 511 ms 210752 KB Output is correct
36 Runtime error 715 ms 262144 KB Execution killed with signal 9
37 Halted 0 ms 0 KB -