#include <bits/stdc++.h>
using namespace std;
bool arrange(int a, int b) { return a > b; }
int main() {
  int n, d, s, x[50];
  cin >> n >> d >> s;
  for (int i = 0; i < n; i++) {
    cin >> x[i];
  }
  sort(x, x + n, arrange);
  int res = 0;
  int dd = d, ss = s;
  if (dd <= ss) {
    cout << 0 << endl;
    return 0;
  }
  int sum = 0;
  for (int i = 0; i < n; i++) {
    if (i != 0)
      sum += (x[i] - 1);
    else
      sum += x[i];
    if (dd - sum <= 0 || (dd - sum <= (s - 1))) {
      res = i + 1;
      break;
    }
    if (x[i] == 1 || i == n - 1) {
      if (dd - sum <= 0 || (dd - sum == (s - 1)))
        res = i + 1;
      else
        res = -1;
      break;
    }
  }
  cout << res << endl;
  return 0;
}
