Submission #1313806

#TimeUsernameProblemLanguageResultExecution timeMemory
1313806rafsanamin2020Stove (JOI18_stove)C++20
0 / 100
11 ms4312 KiB
#include <bits/stdc++.h>
using namespace std;

int main(){
  int n,k;
  cin >> n >> k;
  vector<int>t(n);
  for(int i=0; i<n; i++){
    cin >> t[i];
  }
  if(k == 1){
    cout << (t[n-1]+1 ) - t[0] << endl;
    return 0;
  }
  else if(k == n){
    cout << n << endl;
    return 0;
  }else{
    vector<int>gaps(1E6);
    for(int i=0; i<n-2; i++){
      gaps[i] = t[i+2] - t[i+1];
    }
    sort(gaps.begin(), gaps.end());
    reverse(gaps.begin(), gaps.end());
    int sum = 0;
    for(int i=0; i < k-1; i++){
      sum += gaps[i];
    }
    int ans = (t[n-1]+1 - t[0]) - sum;
    cout << ans;
    return 0;
  }
  
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...