rt
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define int ll
#define mm(x) memset(x,0,sizeof(x))
#define hh puts("")
const int N=1e5+7;
int l,n,m,a[N];
bool f(int x){
int cnt=0,sum=0;
for(int i=1;i<=n;i++){
if(a[i]-sum<x)cnt++;
else sum=a[i];
}
return cnt<=m;
}
signed main(){
cin>>l>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
n++;
a[0]=0;
a[n+1]=l;
int L=0,r=l,ans=0;
while(L<=r){
int mid=(L+r)/2;
if(f(mid))ans=mid,L=mid+1;
else r=mid-1;
}
cout<<ans<<"\n";
}