#include<bits/stdc++.h>
using namespace std;
long long n,c,a[100010];
bool check(int x){
int last=a[1],p=0;
for(int i=2;i<=n;i++){
if(a[i]-last<x){
p++;
}
else{
last=a[i];
}
}
return p<=n-c;
}
int main(){
cin>>n>>c;
long long l=0,r=0;
for(int i=1;i<=n;i++){
cin>>a[i];
r=max(r,a[i]);
}
sort(a+1,a+n+1);
while(l+1<r){
long long mid=l+(r-l)/2;
if(check(mid)){
l=mid;
}
else{
r=mid;
}
}
cout<<l;
return 0;
}
pidan(题解作者)