A. Сережа и контест
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

На последнем раунде Сережи на сайте Codesecrof произошло много падений сервера, в результате чего было решено, что для некоторых участников раунд будет нерейтинговым.

Пусть в соревновании принимали участие n человек. Пусть участник, занявший первое место, имеет рейтинг a1, участник, занявший второе место — a2, ..., участник на n-ом месте имеет рейтинг an. Тогда изменение рейтинга на сайте Codesecrof вычисляется по формуле .

После окончания раунда руководство Codesecrof опубликовало таблицу участников раунда с изменениями рейтинга. Было решено, что для тех участников, для которых di < k, раунд может быть засчитан как нерейтинговый. Но каково же было удивление руководства, когда они обнаружили, что таблица участников с изменениями рейтинга динамическая. Другими словами, когда какой-то участник исключается из рейтинга, он удаляется из таблицы результатов, при этом изменения рейтинга пересчитываются в соответствии с новой таблицей. И конечно же, все заявки на исключение из рейтинга рассматриваются с учетом текущей таблицы.

Известно, что среди всех поданных заявок на исключение из рейтинга первой всегда удовлетворяется заявка от участника с наилучшим местом (наименьшим по номеру), для которого di < k. Также известно, что заявки на исключение из рейтинга подали все участники соревнования.

Теперь Сереже очень интересно, сколько участников могут быть исключены из рейтинга соревнования, а также номера этих участников в первоначальной таблице в порядке их исключения из рейтинга. Обратите внимание на разбор первого тестового примера для лучшего понимания условия.

Входные данные

В первой строке заданы два целых числа n, k (1 ≤ n ≤ 2·105,  - 109 ≤ k ≤ 0). Во второй строке задано n целых чисел через пробел a1, a2, ..., an (1 ≤ ai ≤ 109) — рейтинги участников соревнования, в порядке их расположения в первоначальной таблице результатов.

Выходные данные

Выведите номера участников, в том порядке, в котором они были удалены из таблицы. Выводите изначальные номера участников, то есть те, которые они имели в изначальной таблице.

Примеры
Входные данные
5 0
5 3 4 1 2
Выходные данные
2
3
4
Входные данные
10 -10
5 5 1 7 5 1 2 4 9 2
Выходные данные
2
4
5
7
8
9
Примечание

Рассмотрим первый тестовый пример.

  1. Первоначально последовательность рейтингов участников соревнования равна [5, 3, 4, 1, 2]. По этой последовательности можно посчитать последовательность изменений рейтинга: [0, -9, -13, 8, 14]. По условию задачи первым будет выполнена заявка участника, занявшего второе место.
  2. После того, как участник на втором месте будет исключен из рейтинга, последовательность рейтингов участников соревнования будет равна [5, 4, 1, 2]. По этой последовательности можно посчитать новую последовательность изменений рейтинга: [0, -8, 2, 6]. По условию задачи будет выполнена заявка участника, занявшего второе место. В первоначальной таблице этот участник занимал третье место.
  3. Новая последовательность рейтингов равна [5, 1, 2], новая последовательность изменений рейтингов равна [0, -1, 1]. Будет выполнена заявка участника на втором месте, первоначально этот участник занимал четвертое место.
  4. Новая последовательность рейтингов [5, 2]. Новая последовательность изменений рейтингов [0, 0]. Больше никакие заявки не будут выполнены.

Таким образом, нужно вывести 2, 3, 4.