Submission #939982

#TimeUsernameProblemLanguageResultExecution timeMemory
939982alvaroStove (JOI18_stove)C++17
100 / 100
20 ms2524 KiB
#include <bits/stdc++.h>
using namespace std;

#define nl '\n'
using ll = long long;

#ifdef LOCAL
#include "algo/debug.h"
#else
#define dbg(...)
#endif

void solve() {
  int N, K;
  cin >> N >> K;
  vector<int> T(N);
  for (int i = 0; i < N; ++i) { cin >> T[i]; }
  int ans = T[N - 1] - T[0] + 1;

  priority_queue<int> PQ;
  for (int i = 1; i < N; ++i) { PQ.push(T[i] - T[i - 1]); }

  while (K-- > 1) {
    auto len = PQ.top();
    PQ.pop();
    ans -= len - 1;
    dbg(len, ans);
  }
  cout << ans << nl;
}

signed main() {
  std::ios_base::sync_with_stdio(0), std::cin.tie(0);
  solve();
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...