Submission #162585

#TimeUsernameProblemLanguageResultExecution timeMemory
162585fenech20Stove (JOI18_stove)C++14
100 / 100
85 ms2392 KiB
/**
 * Martin Leshko (leshko.martin@gmail.com)
 */

#include <bits/stdc++.h>

using namespace std;

#define forn(i, n) for (int i = 0; i < (int)n; i++)
#define sz(a) (int)a.size()

const int N = 300001;

int main() {
  int n, k;
  cin >> n >> k;
  vector<int> a(n);
  for (int i = 0; i < n; i++)
    cin >> a[i];
  vector<int> sums;
  for (int i = 1; i < n; i++)
    if (a[i] - a[i - 1] > 1)
      sums.push_back(a[i] - a[i - 1] - 1);
  sort(sums.rbegin(), sums.rend());
  int ans = a[sz(a) - 1] - a[0] + 1;
  for (int i = 0; i < min(sz(sums), k - 1); i++)
    ans -= sums[i];
  cout << ans << endl;

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