#include <bits/stdc++.h>
using namespace std;
inline int read() {
  static int r;
  static char c;
  r = 0, c = getchar();
  while (c < '0' || c > '9') c = getchar();
  while (c >= '0' && c <= '9') r = r * 10 + (c - '0'), c = getchar();
  return r;
}
template <typename T>
inline void print(T* a, int n) {
  for (int i = 1; i < n; ++i) cout << a[i] << " ";
  cout << a[n] << endl;
}
int n, k, a[200000 + 1];
long long d[200000 + 1];
int main(int argc, char* argv[]) {
  scanf("%d%d", &n, &k);
  for (int i = 1; i <= n; ++i) scanf("%d", a + i);
  for (int i = 1; i <= n; ++i) d[i] = d[i - 1] + (long long)(i - 2) * a[i - 1];
  for (int i = 1; i <= n; ++i) d[i] -= (long long)(i - 1) * (n - i) * a[i];
  int cnt = 0;
  long long delta = 0LL;
  for (int i = 1; i <= n; ++i) {
    delta -= (long long)a[i - 1] * cnt;
    if (d[i] + delta + (long long)cnt * (n - i) * a[i] < k) {
      ++cnt;
      delta -= (long long)(i - 1 - cnt) * a[i];
      cout << i << endl;
    }
  }
  return 0;
}
