#include<bits/stdc++.h>
using namespace std;
long long lon,n,m,a[100000],l,r,mid;
int find(int mid){
int cnt=0,num=0,i=0;
while(i<=n+1){
if(a[i]-a[num]>mid)
cnt++;
else
num=i;
}
return cnt<=m;
}
int main(){
cin>>lon>>n>>m;
a[0]=0;a[n+1]=lon;
l=0;r=lon;
for(int i=1;i<=n;i++)
cin>>a[i];
while(l+1<r){
mid=(l+r)>>1;
if(find(mid)) l=mid;
else r=mid;
}
cout<<l;
return 0;
}