#include <bits/stdc++.h>
using namespace std;
int par[100000];
int ancest(int n){
if(par[n]==n)return n;
par[n]=ancest(par[n]);
return par[n];
}
int main() {
ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
int N,K;cin>>N>>K;
int t[N],par[N],fuel[N];
vector<pair<int,int>> dist;
for(int i=0;i<N;i++){
cin>>t[i];
par[i]=i;
fuel[i]=1;
if(i>0){
dist.push_back({t[i]-t[i-1]-1,i});
}
}
sort(dist.begin(),dist.end());
for(int i=0;i<N-K;i++){
int a=dist[i].second-1,b=dist[i].second,c=dist[i].first;
ancest(a);ancest(b);
par[par[a]]=par[b];
fuel[par[b]]+=fuel[par[a]]+c;
}
int s=0;
for(int i=0;i<N;i++){
if(par[i]==i){
s+=fuel[i];
}
}
cout<<s;
return 0;
}