#include<iostream>
#include <iomanip>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<string>
#include <stack>
#include<vector>
#define Debug(in) cout<<#in<<"="<<(in)<<endl
#define mm(a,x) memset(a,x,sizeof(a))
#define sync std::ios::sync_with_stdio(false);std::cin.tie(0)
#define endl '\n'
#define PI acos(-1.0)
using namespace std;
typedef long long ll;
typedef pair<int,int> pii;
const int inf=0x3f3f3f3f;
ll d,n,m;string s;
ll a[100010], b[10010];bool flag;
bool check(ll x)
{
ll i=0,tmp=0,ans=0;
while(i<=n+1)
{
i++;
if(a[i]-a[tmp]<x)
{
ans++;
}
else
{
tmp=i;
}
}
return ans<=m;
}
int main()
{
cin>>d>>n>>m;ll ans=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
a[0]=0,a[n+1]=d;
ll l=0,r=d;
while(l<r)
{
ll mid=(l+r+1)>>1;
if(check(mid))
l=mid;
else
r=mid-1;
}
cout<<r;
return 0;
}