Submission #1257238

#TimeUsernameProblemLanguageResultExecution timeMemory
1257238mecukuryurtStove (JOI18_stove)C++20
100 / 100
32 ms2000 KiB
#include <bits/stdc++.h>

#define lli long long int

using namespace std;

lli n,k;

vector<lli> guests;
vector<lli> diff;

bool myopmyop(lli a, lli b) {
    return a < b;
}

int main() {
    cin >> n >> k;
    lli totaldiff = 0;

    for (lli i=0; i<n; i++) {
        lli a;
        cin >> a;
        guests.push_back(a);

        if (i >= 1) {
            diff.push_back(guests[i] - guests[i-1] - 1);
            // cout << guests[i] - guests[i-1] - 1<< " ";
            totaldiff += guests[i] - guests[i-1] - 1;
        }
    }

    sort(diff.begin(), diff.end(), myopmyop);

    for (lli j=0; j<k-1; j++) {
        totaldiff -= diff.back();
        diff.pop_back();
    }
    //cout << endl << endl;
    cout << totaldiff + n << endl;

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...