#include<bits/stdc++.h>
using namespace std;
const int N=100010;
long long L,n,k,a[N];
long long check(long long mid){
long long ans=0,cnt=0;
for(int i=1;i<=L;i++){
cnt++;
if(a[i]==1){
cnt=0;
continue;
}
if(cnt+1>mid){
ans++;
cnt=0;
}
}
if(ans<=k){
return 1;
}else{
return 0;
}
}
int main(){
cin>>L>>n>>k;
long long x;
for(int i=1;i<=n;i++){
cin>>x;
a[x]=1;
}
a[0]=1,a[L]=1;
long long l=0,r=L;
while(l<r){
long long mid=(l+r)>>1;
if(check(mid)){
r=mid;
}else{
l=mid+1;
}
}
cout<<l<<endl;
return 0;
}
所以讨论版真是个好东西
有没有哪位大佬可以帮我看下为什么我的二分一直RE应该不是数组大小的问题