#include <bits/stdc++.h>
using namespace std;
bool cmp(pair<long long int, long long int> lhs,
         pair<long long int, long long int> rhs) {
  return lhs.first > rhs.first;
}
long long int pre[100009];
long long int idx[100009], val[100009];
pair<long long int, long long int> a[100009];
int main() {
  long long int n, k;
  scanf("%lld", &n);
  scanf("%lld", &k);
  long long int b;
  scanf("%lld", &b);
  for (int i = int(0); i <= int(n - 1); i++) {
    scanf("%d", &a[i].first);
    a[i].second = i;
    val[i] = a[i].first;
  }
  sort(a, a + n - 1, cmp);
  for (int i = int(0); i <= int(n - 2); i++) {
    idx[a[i].second] = i;
    pre[i] = a[i].first;
    if (i >= 1) pre[i] += pre[i - 1];
  }
  for (int i = int(0); i <= int(n - 2); i++) {
    long long int tmp = pre[k - 2];
    if (idx[i] <= k - 2) {
      tmp -= val[i];
      if (val[i] > b - tmp) {
        printf("%d\n", i + 1);
        return 0;
      } else if (n != k) {
        tmp = pre[k - 1];
        tmp -= val[i];
        if (val[i] > b - tmp) {
          printf("%d\n", i + 1);
          return 0;
        }
      }
    } else {
      if (val[i] > b - tmp) {
        printf("%d\n", i + 1);
        return 0;
      }
    }
  }
  printf("%d\n", n);
  return 0;
}
