제출 #171737

#제출 시각아이디문제언어결과실행 시간메모리
171737VEGAnnK blocks (IZhO14_blocks)C++14
53 / 100
9 ms764 KiB
#include <bits/stdc++.h>
using namespace std;
const int oo = 2e9;
const int N = 110;
const int K = 110;
int f[N][K], a[N], n, k;

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

    for (int i = 0; i <= n; i++)
        for (int j = 0; j <= k; j++)
            f[i][j] = oo;

    f[0][0] = 0;

    for (int j = 1; j <= k; j++)
    for (int i = 1; i <= n; i++){
        int mx = 0;
        for (int pr = i; pr > 0; pr--){
            mx = max(mx, a[pr]);
            if (f[pr - 1][j - 1] < oo)
                f[i][j] = min(f[i][j], mx + f[pr - 1][j - 1]);
        }
    }

    cout << f[n][k];
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...