#include<iostream>
#include<algorithm>
using namespace std;
const int N=5e5+9;
int d,n,a[N],m;
bool ck(int x){
int cnt=0,now=a[0];
for(int i=1;i<=n+1;i++){
if(a[i]-now<x)cnt++;
else now=a[i];
}
return cnt<=m;
}
int main(){
cin>>d>>n>>m;
a[0]=0;
for(int i=1;i<=n;i++)cin>>a[i];
a[n+1]=d;
int l=0,r=1e9;
int ans=0;
while(l+1!=r){
int mid=(l+r)/2;
if(ck(mid))l=mid;
else r=mid;
}
cout<<l;
return 0;
}