Submit solution


Очки: 150
Ограничение по времени: 2.0s
Ограничение по памяти: 256M

Автор:
Problem type
Allowed languages
C++, Python

Лесорубу нужно заготовить не меньше M единиц древесины. Перед работой он выставляет высоту пилы h.

После этого каждое дерево обрезается по следующим правилам:

  • если высота дерева a_i больше h, то с него срезается верхняя часть длиной a_i - h;
  • если высота дерева не превышает h, дерево не даёт древесины.

Требуется выбрать максимальную целую высоту пилы h, при которой суммарный объём собранной древесины будет не меньше M.

Гарантируется, что получить нужный объём возможно.

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

В первой строке даны два целых числа n и M — количество деревьев и требуемый объём древесины.

Во второй строке даны n целых чисел a_i — высоты деревьев.

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

Выведите одно целое число — максимальную высоту пилы h, при которой лесоруб сможет собрать не меньше M единиц древесины.

Ограничения

  • 1 <= n <= 2 * 10^5
  • 1 <= M <= 10^18
  • 1 <= a_i <= 10^9

Примеры

Пример 1

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

1 1
1

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

0
Пример 2

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

5 3
5 5 5 5 5

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

4

Комментарии

Еще нет ни одного комментария.