Submission #1049733

#TimeUsernameProblemLanguageResultExecution timeMemory
1049733vjudge1Stove (JOI18_stove)C++17
100 / 100
36 ms1996 KiB
#include <iostream>
#include <algorithm>
using namespace std;
long long ans ;
int main() 
{
  long long n,k;
  cin>>n>>k;

  ans = n;
  
  long long a[n];
  long long pr[n-1];
  long long pok = k;
  for(long long i = 0 ;i<n; i++){
    cin>>a[i];
  }
  for(long long i = 0; i<n-1; i++){
    pr[i]=a[i+1]-a[i]-1;
  }
  sort(pr,pr+n-1);
  
  for(int i = 0 ; i<n-1;i++){
    if(pr[i]==0){
      pok++;
      pr[i]=1000000001;
      if(pok>=n){
        break;
      }
    }
    else{
      break;
    }
  }
  if(pok<n){
    sort(pr,pr+n-1);
    for(int i = 0 ; i<n-pok; i++){
      ans+=pr[i];
    }
    cout<<ans;
  }
  else{
    cout<<ans;
  }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...