Submission #198527

#TimeUsernameProblemLanguageResultExecution timeMemory
198527killB0xStove (JOI18_stove)C++14
100 / 100
81 ms6904 KiB
#include <bits/stdc++.h>
using namespace std;
using namespace std::chrono; 
typedef long long int ll;
typedef unsigned long long int ull;
typedef pair<int,int> ii;
typedef pair<ll,ll> dl;
typedef vector<ii> vii;
typedef vector<dl> vdll;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<string> vs;
#define pb push_back
#define mp make_pair
#define ft first
#define sc second
#define in insert
#define bs binary_search
#define rc(s) return cout << s,0
const ll mod=1e9+7;
const int N=100005;
#define M_PI 3.14159265358979323846
#define INF LLONG_MAX
#define sz(x) ((int)(x.size()))
#define int ll
#define endl '\n'
#define map unordered_map
/*----------------------------*/
int a[N];
/*----------------------------*/
int32_t main() {
    //freopen("sol.in","r",stdin);
    //freopen("sol.out","w",stdout);
    ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
    int n,k;
    cin>>n>>k;
    for(int i=1;i<=n;i++)cin>>a[i];
    multiset<int> s;
    for(int i=2;i<=n;i++)s.in(a[i]-a[i-1]-1);
    int ans=n;
    int u=n-k;
    for(auto it=s.begin();it!=s.end();it++)
    {
        if(u==0)break;
        ans+=*it;
        u--;
    }
    rc(ans);
    //THIS IS IS THE END    
}   
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...