#include<bits/stdc++.h>
using namespace std;
int L, n, k, a[100010], l, r;
bool check(int x)
{
int sum = 0;
for (int i = 0; i <= n; i++)
{
if (a[i+1] - a[i] > x)
{
sum += (a[i+1] - a[i]) / x;
if(!((a[i+1] - a[i]) % x)) --sum;
}
if (sum > k) return false;
}
return true;
}
int main()
{
cin >> L >> n >> k;
for (int i = 1; i <= n; i++)
{
cin >> a[i];
}
a[n+1] = L;
r = 10000001;
while (l < r)
{
int mid = (l + r) / 2;
if (check(mid)) r = mid;
else l = mid + 1;
}
cout << l;
return 0;
}