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