L, N, M = map(int, input().split())
jump = [0] * 50000
for i in range(N):
jump[i] = int(input())
l = 0
r = L
ans = 0
while (l <= r):
mid = int((l + r) / 2)
now = 0
sum = 0
for i in range(1, N + 1):
if (jump[i] - jump[now]) < mid:
sum += 1
else:
now = i
if sum <= M:
ans = mid
l = mid + 1
else:
r = mid - 1
print(ans)