蒟蒻的代码:
#include<bits/stdc++.h>
#define int long long
using namespace std;
int L,n,m,a[50015],l,r,ans;
bool check(int mid){
int sum=0;
for(int x=1,y=2;y<=n+1;y++){
if(a[y]-a[x]<mid){
sum++;
}
else{
x=y;
}
}
if(sum>m){
return 0;
}
else{
return 1;
}
}
signed main(){
cin>>L>>n>>m;
l=1,r=L;
for(int i=1;i<=n;i++){
cin>>a[i];
}
a[n+1]=m;
while(l<r){
int mid=(l+r)>>1;
if(check(mid)){
ans=mid;
l=mid+1;
}
else{
r=mid-1;
}
}
cout<<ans;
return 0;
}