Submission #1112837

#TimeUsernameProblemLanguageResultExecution timeMemory
1112837PwoStove (JOI18_stove)C++17
50 / 100
224 ms262144 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long

int32_t main() {
	ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
	int n, k; cin >> n >> k;
	int a[n + 1]; for (int i = 1; i <= n; i++) cin >> a[i];
	a[0] = a[1];
	
	int dp[n + 1][k + 1]{}; dp[0][1] = 1e18;
	for (int i = 1; i <= n; i++) for (int j = 0; j <= k; j++) {
		if (i < j || j == 0) { dp[i][j] = 1e18; continue; }
		dp[i][j] = min(dp[i - 1][j] + a[i] - a[i - 1], dp[i - 1][j - 1] + 1);
	}
	
	cout << dp[n][k];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...