Codeforces Round 699 (Div. 2) |
---|
Закончено |
Достигнув нужной планеты вы решили основать здесь колонию. Так как на планете множество гор, а для колонии нужна ровная поверхность, вы решили выровнять горы, используя валуны (во сне эта идея показалась вам вполне логичной).
Вам задан массив $$$h_1, h_2, \dots, h_n$$$, в котором $$$h_i$$$ — это высота $$$i$$$-й горы, и $$$k$$$ — количество валунов в вашем распоряжении.
Вы начинаете сбрасывать валуны над первой горой по одному, и каждый валун будет двигаться следующим образом (предположим, высота текущей горы равна $$$h_i$$$):
Ваша задача — определить финальную позицию $$$k$$$-го валуна или сказать, что он упадет в систему сбора.
В первой строке задано одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из двух строк. В первой строке каждого набора заданы два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 100$$$; $$$1 \le k \le 10^9$$$) — количество гор и валунов.
Во второй строке заданы $$$n$$$ целых чисел $$$h_1, h_2, \dots, h_n$$$ ($$$1 \le h_i \le 100$$$) — высоты гор.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$100$$$.
Для каждого набора входных данных выведите $$$-1$$$, если $$$k$$$-й валун упадет в систему сбора. В противном случае выведите позицию $$$k$$$-го валуна.
4 4 3 4 1 2 3 2 7 1 8 4 5 4 1 2 3 3 1 5 3 1
2 1 -1 -1
Промоделируем первый набор входных данных:
Позиции, в которых каждый валун остановится, следующие: $$$[2,3,2]$$$.
Во втором наборе все $$$7$$$ валунов останутся прямо на первой горе, увеличивая ее высоту от $$$1$$$ до $$$8$$$.
Третий набор входных данных похож на первый, но в данном случае вы сбросите $$$5$$$ валунов. Первые три будут вести себя аналогично первому набору входных данных. После этого высоты гор станут равны $$$[4, 3, 3, 3]$$$, а потому оставшиеся два валуна упадут в систему сбора.
В четвертом наборе первый и единственный валун упадет прямо в систему сбора.
Название |
---|