Submission #1017437

# Submission time Handle Problem Language Result Execution time Memory
1017437 2024-07-09T07:59:34 Z vjudge1 Holding (COCI20_holding) C++17
55 / 110
31 ms 25920 KB
#include <bits/stdc++.h>
using namespace std;

const int N = 52, K = 1e4 + 5;
int n, l, r, money, a[N];
int dp[N][N][K];

int main(){
    cin >> n >> l >> r >> money;
    for (int i = 1; i <= n; i ++)
        cin >> a[i];

    for (int i = 0; i < K; i ++)
        dp[l][l][i] = a[l];

    for (int i = l; i <= r; i ++){
        for (int j = l; j > 0; j --){
            for (int k = 0; k <= money; k ++){
                if (j == l){
                    dp[i][j][k] = dp[i - 1][j][k] + a[i];
                    continue;
                }
                
                dp[i][j][k] = min(dp[i - 1][j][k] + a[i], dp[i][j + 1][k]);
                // cout << i << " " << j << " " << k << " : " << dp[i][j][k] << endl;
                if (k > 0)
                    dp[i][j][k] = min(dp[i][j][k], dp[i][j][k - 1]);
                if (k >= abs(i - j))
                    dp[i][j][k] = min(dp[i][j][k], dp[i - 1][j + 1][k - abs(i - j)] + a[j]);
            }
        }
    }

    cout << dp[r][1][money] << endl;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 2 ms 2140 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 2 ms 2140 KB Output is correct
8 Correct 1 ms 2652 KB Output is correct
9 Correct 1 ms 2908 KB Output is correct
10 Correct 2 ms 3164 KB Output is correct
11 Correct 2 ms 3420 KB Output is correct
12 Correct 1 ms 2396 KB Output is correct
13 Correct 31 ms 25920 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 2 ms 2140 KB Output is correct
8 Correct 1 ms 2652 KB Output is correct
9 Correct 1 ms 2908 KB Output is correct
10 Correct 2 ms 3164 KB Output is correct
11 Correct 2 ms 3420 KB Output is correct
12 Correct 1 ms 2396 KB Output is correct
13 Correct 31 ms 25920 KB Output is correct
14 Correct 1 ms 856 KB Output is correct
15 Correct 1 ms 1116 KB Output is correct
16 Incorrect 0 ms 936 KB Output isn't correct
17 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 604 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 0 ms 604 KB Output is correct
7 Correct 2 ms 2140 KB Output is correct
8 Correct 1 ms 2652 KB Output is correct
9 Correct 1 ms 2908 KB Output is correct
10 Correct 2 ms 3164 KB Output is correct
11 Correct 2 ms 3420 KB Output is correct
12 Correct 1 ms 2396 KB Output is correct
13 Correct 31 ms 25920 KB Output is correct
14 Correct 1 ms 856 KB Output is correct
15 Correct 1 ms 1116 KB Output is correct
16 Incorrect 0 ms 936 KB Output isn't correct
17 Halted 0 ms 0 KB -