#include <bits/stdc++.h>
using namespace std;
const double pi = acos(-1.0);
const int inf = (int)1e9;
int kol[1500];
bool used[1500];
int main() {
  int m, t, r;
  cin >> m >> t >> r;
  vector<int> a(m);
  for (int i = 0; i < m; ++i) {
    cin >> a[i];
    a[i] += 305;
  }
  for (int i = 0; i < m; ++i) {
    if (kol[a[i]] >= r) {
      continue;
    }
    for (int j = 1; j <= t; ++j) {
      int wh = a[i] - j;
      if (used[wh]) {
        continue;
      }
      used[wh] = true;
      for (int k = wh + 1; k < wh + 1 + t; ++k) {
        kol[k]++;
      }
      if (kol[a[i]] >= r) {
        break;
      }
    }
    if (kol[a[i]] < r) {
      cout << -1;
      return 0;
    }
  }
  int res = 0;
  for (int i = 0; i < 1500; ++i) {
    if (used[i]) {
      ++res;
    }
  }
  cout << res;
  return 0;
}
