#include <bits/stdc++.h>
using namespace std;
const int MAX = 500;
int ans, f[2000], n, t, k, a[1000];
int main() {
  scanf("%d %d %d", &n, &t, &k);
  for (int i = 0; i < n; i++) scanf("%d", &a[i]);
  sort(a, a + n);
  ans = 0;
  for (int i = 0; i < n; i++)
    if (f[a[i] + MAX] < k) {
      for (int j = 1, lim = k - f[a[i] + MAX]; j <= lim; j++) {
        for (int Time = a[i] - j + 1; Time < a[i] - j + 1 + t; Time++)
          f[Time + MAX]++;
        ans++;
      }
      if (f[a[i] + MAX] < k) {
        printf("%d", -1);
        return 0;
      }
    }
  printf("%d", ans);
}
