#include <bits/stdc++.h>
using namespace std;
int a, b, c, d, n[10000], low, maxx, mid, ls, aaa, la[10000];
bool ch(int mid) {
int bus, st = n[1], cow;
for (int i = 2; i <= a; i++) {
cow++;
if (n[i] - st > mid || cow > c) {
bus++;
cow = 1;
st = n[i];
if (bus > b)
return 0;
}
}
return 1;
}
int main() {
cin >> a >> b >> c;
for (int i = 1; i <= a; i++) {
cin >> n[i];
}
sort(n, n + a + 1);
int l = 0, r = 100000000;
while (l < r) {
mid = (l + r + 1) / 2;
if (ch(mid))
l = mid;
else
r = mid - 1;
}
cout << l;
}