Submission #229486

#TimeUsernameProblemLanguageResultExecution timeMemory
229486TehillahStove (JOI18_stove)C++14
100 / 100
28 ms3324 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define pb push_back #define mkp make_pair #define ff first #define ss second #define all(a) a.begin(), a.end() #define sz(a) (int)(a.size()) #define clr(a, b) memset(a, b, sizeof(a)) #define REP(i, a, b) for(int i=(int)(a); i<(int)(b); ++i) #define REPD(i, a, b) for(int i=(int)(a)-1; i>=(int)(b); --i) #define FOR(it,c) for ( __typeof((c).begin()) it=(c).begin(); it!=(c).end(); it++ ) template<typename T> inline bool chkmin(T &a, const T &b) { return a > b ? a = b, 1 : 0; } template<typename T> inline bool chkmax(T &a, const T &b) { return a < b ? a = b, 1 : 0; } mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); const int N = 100005; ll a[N]; int n, kk; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cin >> n >> kk; ll res = 0; REP(i, 0, n) { cin >> a[i]; } res = a[n-1] - a[0] + 1; vector<ll> v; REP(i, 1, n) { v.pb(a[i] - a[i-1] - 1); } sort(all(v)); reverse(all(v)); REP(i, 0, kk-1) { res -= v[i]; } cout << res << "\n"; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...