Submission #369480

#TimeUsernameProblemLanguageResultExecution timeMemory
369480MilosMilutinovicK개의 묶음 (IZhO14_blocks)C++14
0 / 100
1 ms492 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); int n, k; cin >> n >> k; vector<int> a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } const int inf = (int) 1e9; vector<vector<int>> dp(n, vector<int>(k, inf)); int curr = 0; for (int i = 0; i < n; i++) { curr = max(curr, a[i]); dp[i][0] = curr; } for (int i = 1; i < k; i++) { for (int j = 0; j < n; j++) { int mx = 0; for (int l = j; l >= 0; l--) { mx = max(mx, a[l]); dp[j][i] = min(dp[j][i], dp[l][i - 1] + mx); } } } cout << dp[n - 1][k - 1] << '\n'; 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...