Submission #555046

#TimeUsernameProblemLanguageResultExecution timeMemory
555046colossal_pepeStove (JOI18_stove)C++17
100 / 100
22 ms2124 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int n, k;
vector<int> times;
vector<int> diff;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin >> n >> k;
    times.resize(n), diff.resize(n - 1);
    for (int &t : times) {
        cin >> t;
    }
    sort(times.begin(), times.end());
    for (int i = 0; i + 1 < n; i++) {
        diff[i] = times[i + 1] - times[i];
    }
    int ans = n;
    int k_req = n;
    sort(diff.rbegin(), diff.rend());
    while (k_req > k) {
        ans += diff.back() - 1;
        k_req--;
        diff.pop_back();
    }
    cout << ans << endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...