#include<bits/stdc++.h>
using namespace std;
long long l,n,m,a[100000000];
bool check(long long x)
{
long long p=0;
long long cnt=0;
for (int i=1;i<=n;i++)
{
if (a[i]-a[p]>=x)
p=i;
else
cnt++;
}
if (cnt<=m) return 1;
else return 0;
}
long long find(long long l,long long r)
{
if (check(r)!=0) return r;
int mid;
while(l+1<r)
{
mid=(l+r)/2;
if (check(mid)) l=mid;
else r=mid;
}
return l;
}
int main(){
cin>>l>>n>>m;
long long ma=0,s=0;
for (long long i=1;i<=n;i++)
cin>>a[i];
cout<<find(1,l);
return 0;
}