#include<bits/stdc++.h>
using namespace std;
int l,n,m,d[500500];
bool check(long long mid){
int bj=0,now=0;
for(int i=1;i<=n;i++){
if(d[i]-d[now]<mid) bj++;
else now=i;
}
if(bj>m) return false;
return true;
}
int main(){
int ans;
cin>>l>>n>>m;
for(int i=1;i<=n;i++) cin>>d[i];
int ll=0,r=l;
while(ll<=r){
int mid=(ll+r)/2;
if(check(mid)) ans=mid,ll=mid+1;
else r=mid-1;
}
cout<<ans<<endl;
return 0;
}