#include<bits/stdc++.h>
using namespace std;
long long L,N,M,d[50005],ans;
bool check(long long mid) {
int temp=0,now=0;
for(int i=1; i<=N; i++)
if(d[i]-d[now]<mid) temp++;
else now=i;
if(temp>M) return false;
return true;
}
int main() {
cin>>L>>N>>M;
for(int i=1; i<=N; i++) cin>>d[i];=
int l=0,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<<endl;
return 0;
}