Ctrl K

Все фонари горят как можно дольше

Сложная
Есть devices фонарей и набор батареек: батарейки i хватает на charges[i] минут работы одного фонаря. Батарейки не перезаряжаются. В начале в каждый фонарь можно вставить не больше одной батарейки. Дальше в любую целую минуту батарейку можно вынуть и вставить другую — новую или вынутую из другого фонаря; замена происходит мгновенно и сколько угодно раз. Верните, сколько минут (наибольшее целое число) все devices фонарей могут гореть одновременно.
Пример 1
devices=3, charges=[4, 4, 4, 3] → 5

Всего 15 минут заряда на три фонаря — по 5 минут на каждый. Ни одна батарейка не больше 5, поэтому заряд можно распределить ровно: 5.

Пример 2
devices=2, charges=[20, 2, 3] → 5

Батарейка на 20 хватит одному фонарю надолго, но второму достаются только 2 + 3 = 5 минут — дольше обоим вместе не продержаться.

Пример 3
devices=1, charges=[1, 1, 1] → 3

Один фонарь по очереди работает от всех трёх батареек: 3 минуты.

Ограничения
  • 1 ≤ devices ≤ charges.length ≤ 10⁵
  • 1 ≤ charges[i] ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиГрузчики и энергетики СложнаяКрасота клумб на бюджете СложнаяОбщая настройка с разной ценой шага СложнаяСервер включён как можно меньше СложнаяРаздача с самой младшей карты Сложная
загружаем Python…
Вход
devices=3, charges=[4, 4, 4, 3]
Ожидается
5

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 117 тестов на сервере, включая скрытые.