#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;
}