Submission #1290457

#TimeUsernameProblemLanguageResultExecution timeMemory
1290457hasandasStove (JOI18_stove)C++20
100 / 100
15 ms2000 KiB
#include <bits/stdc++.h>

using namespace std;


int main() {
	ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);

	long long N, K;
	cin >> N >> K;
	vector<long long> T(N);
	for (long long i = 0; i < N; ++i) {
		cin >> T[i];
	}

	if (K >= N) {
		cout << N << endl;
			
		return 0;
	}

	vector<long long> a;
	a.reserve(N-1);

	for (long long i = 0; i+1 < N; ++i) {
		long long g = T[i+1] - T[i] - 1;
		a.push_back(g);
	}

	ranges::sort(a);

	long long ans = N; 
	for (long long i = 0; i < N-K; i++) {
		ans += a[i];
	}

	cout << ans << '\n';

	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...