#include <bits/stdc++.h>
using namespace std;
int main() {
  int m, t, r;
  cin >> m >> t >> r;
  int a[2005], B = 1000, p[500];
  bool res = true;
  for (int i = 0; i < 2000; ++i) {
    a[i] = 0;
  }
  for (int i = 0; i < m; ++i) {
    cin >> p[i];
  }
  for (int i = 0; i < m; ++i) {
    int x = p[i];
    int cnt = 0;
    for (int j = x - 1; j >= x - t; --j) {
      if (a[B + j] == 1) ++cnt;
    }
    if (cnt >= r) continue;
    cnt = r - cnt;
    for (int j = x - 1; j >= x - t && cnt > 0; --j) {
      if (a[B + j] == 0) {
        a[B + j] = 1;
        --cnt;
      }
    }
    if (cnt) {
      res = false;
      break;
    }
  }
  int ans = 0;
  if (res) {
    for (int i = 0; i < 2000; ++i)
      if (a[i]) ++ans;
    cout << ans << endl;
  } else
    cout << "-1" << endl;
  return 0;
}
