Круглосуточная кофейня обслуживается в Т‑Бизнесе. profit[i] — средняя прибыль за i-й час суток в рублях (выручка минус зарплата смены); ночные часы бывают убыточными.
Сутки — кольцо: после последнего часа идёт снова нулевой. Найдите наибольшую прибыль за непустой отрезок подряд идущих часов длиной не больше суток (отрезок может переходить через полночь).
В работе: Владелец решает, когда держать точку открытой: смена 18:00–02:00 через полночь может оказаться выгоднее дневной, а перебор всех смен по 168 часам недели легко, но по минутам — 10⁸ сумм.
Пример 1
profit = [900, -300, -1200, -400, 200, 1100]
2200
Через полночь: 200 + 1100 + 900 = 2200.
Пример 2
profit = [-50, -20, -70]
-20
Все часы убыточны — лучший отрезок из одного часа −20.
Ограничения
- 1 ≤ n ≤ 2·10⁵
- −10⁴ ≤
profit[i]≤ 10⁴ - Лимит — 2 с на тест (1500 мс).
print() и console.log() уходят в консоль.
def best_shift(profit):
Источник: наша задача на данных Т-Банка. Условие пересказано своими словами.
Ожидаемый ответ не нужен: покажем, что вернула функция.
Здесь появится результат отправки.