#include<bits/stdc++.h>
using namespace std;
const long long N=1e6+17;
long long L,n,m,l,r,ans;
long long d[N];
bool check(long long x){
long long tot=0,p=0;
for(long long i=1;i<=n;i++){
if(d[i]-p<x){
tot++;
}
else{
p=d[i];
}
}
if(tot<=m) return 1;
else return 0;
}
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>L>>n>>m;
for(long long i=1;i<=n;i++){
cin>>d[i];
}
l=1,r=L;
while(l<=r){
long long mid=(l+r)>>1;
if(check(mid)){
ans=mid,l=mid+1;
}
else{
r=mid-1;
}
}
cout<<ans<<'\n';
return 0;
}