Submission #345189

#TimeUsernameProblemLanguageResultExecution timeMemory
345189vonatlusK blocks (IZhO14_blocks)C++14
53 / 100
5 ms2028 KiB
#include<bits/stdc++.h> using namespace std; using ll = long long; const int N = 200; const ll INF = (1ll<<50); void fin() { #ifdef AM freopen(".in", "r", stdin); #endif } ll dp[N][N]; int main() { ios_base::sync_with_stdio(0); cin.tie(nullptr), fin(); int n, k; cin >> n >> k; vector<int> a(n); for (int& x : a) { cin >> x; } a.insert(a.begin(), 0); for (int i = 0; i <= n; ++i) { fill(dp[i], dp[i]+N, INF); } dp[0][0] = 0; for (int t = 1; t <= k; ++t) { for (int i = 1; i <= n; ++i) { int mx = 0; for (int j = i; j > 0; --j) { mx = max(mx, a[j]); dp[i][t] = min(dp[i][t], dp[j-1][t-1] + mx); } } } cout << dp[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...