#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll l,n,m,ans=0;
cin>>l>>n>>m;
vector<ll>v;
ll tmp;
v.push_back(0);
for(int i=0;i<n;i++){
cin>>tmp;
v.push_back(tmp);
}
v.push_back(l);
ll L=0,R=l;
while(L<=R){
ll mid=(L+R)/2;
ll tmpM=m;
for(int i=0,nextI=1;i<v.size()-1;){
if(v[nextI]-v[i]<mid){
tmpM--;
nextI++;
}else{
i=nextI;
nextI++;
}
if(tmpM<0){
break;
}
}
if(tmpM<0){
R=mid-1;
}else{
L=mid+1;
ans=mid;
}
}
cout<<ans;
return 0;
}