Submission #1157552

#TimeUsernameProblemLanguageResultExecution timeMemory
1157552mocha오렌지 출하 (JOI16_ho_t1)C++20
100 / 100
32 ms692 KiB
#include <bits/stdc++.h> #define int long long using namespace std; const int inf = 1e18; int n, m, k; int a[20005]; int ma[20][20005], mn[20][20005]; int dp[20005]; int ans; signed main() { cin >> n >> m >> k; for (int i=1;i<=n;i++) cin >> a[i]; dp[0] = 0; int ma, mn; for (int i=1;i<=n;i++) { ma = mn = a[i]; dp[i] = k + ma - mn + dp[i-1]; for (int j=i;j>=max(1ll, i-m+1);j--) { ma = max(a[j], ma), mn = min(a[j], mn); dp[i] = min(dp[i], k + (i-j+1)*(ma-mn) + dp[j-1]); } } cout << dp[n] << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...