#include <bits/stdc++.h>
using namespace std;
int a[100000];
int e[310];
int main() {
  int m, t, r;
  scanf("%d%d%d", &m, &t, &r);
  int start = 2000;
  for (int i = 0; i < m; i++) {
    int w;
    scanf("%d", &e[i]);
  }
  if (t < r) {
    printf("-1\n");
    return 0;
  } else {
    for (int i = 0; i < m; i++) {
      int cnt = 0;
      for (int j = e[i] - 1 + start; j >= e[i] + start - t; j--) {
        if (a[j] == 1) cnt++;
      }
      if (cnt < r) {
        for (int j = e[i] - 1 + start; j >= e[i] + start - t; j--) {
          if (cnt == r) break;
          if (a[j] == 0) {
            a[j] = 1;
            cnt++;
          }
        }
      }
    }
    int ans = 0;
    for (int i = 0; i < 4000; i++) {
      if (a[i] == 1) ans++;
    }
    printf("%d\n", ans);
  }
  return 0;
}
