Submission #1175071

#TimeUsernameProblemLanguageResultExecution timeMemory
1175071hiepsimauhongStove (JOI18_stove)C++20
0 / 100
0 ms320 KiB
#include <bits/stdc++.h>

using namespace std;

using ll = long long;
const int64_t oo = 1e9;
//#define int long long

#define quickly ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define print(a,l,r) for(int OK(l); OK <= r ; ++OK){ if(a[OK] < oo){cout << a[OK] <<' ';} else{cout << "- ";}} cout << '\n';
#define prints(a) for(auto i : a){ cout << i <<' ';} cout << '\n';
#define printz(a,l,r) for(int OK(1) ; OK <= l ; ++OK){for(int KO(1) ; KO <= r ; ++KO){if(a[OK][KO] < oo){cout << a[OK][KO] <<' ';}else{cout << "- ";}}cout << '\n';} cout << '\n';
#define fs first
#define sd second
#define th second.second
#define ii pair<int,int>
#define iii pair<int, ii>
#define all(a) a.begin(), a.end()
const int N = 5000 + 5;
const int mod = 1e9 + 7;

int n, k;
int DP[N][N], a[N], b[N];

signed main(){ quickly
        cin >> n >> k;

        for(int i(1) ; i <= n ; ++i){
                cin >> a[i];
                b[i] = a[i] - a[i - 1] - 1;
        }
        b[1] = a[1];

        sort(b + 1, b + 1 + n, greater<int>());

        int ans = 0;
        for(int i(1) ; i <= k ; ++i){
                ans += b[i];
        }

        cout << a[n] + 1 - ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...