Submission #1308803

#TimeUsernameProblemLanguageResultExecution timeMemory
1308803liptonekStove (JOI18_stove)C++20
100 / 100
14 ms2864 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    int n,k;
    cin>>n>>k;

    vector<long long> t(n);

    for(int i=0; i<n; i++)
    {
        cin>>t[i];
    }

    vector<long long> gaps;

    if(n>1)
    {
        gaps.reserve(n-1);

        for(int i=0; i<n-1; i++)
        {
            long long len=t[i+1]-t[i]-1;

            gaps.push_back(len);
        }
    }

    long long total=(t[n-1]+1)-t[0];

    sort(gaps.begin(), gaps.end(), greater<long long>());

    int cuts=k-1;

    for(int i=0; i<gaps.size(); i++)
    {
        if(i<cuts)
        {
            total-=gaps[i];
        }
        else
        {
            break;
        }
    }

    cout<<total<<endl;

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