Ctrl K

Слабое звено, умноженное на сумму

Средняя
Дан массив положительных целых чисел loads. Для непрерывного непустого отрезка массива посчитаем его минимум и сумму и перемножим их — назовём это оценкой отрезка. Например, у отрезка [4, 2, 7] оценка 2 · (4 + 2 + 7) = 26. Верните наибольшую оценку среди всех отрезков массива по модулю 10⁹ + 7. Максимизировать нужно само значение, а остаток брать уже от максимума. Гарантируется, что максимум без взятия остатка помещается в 64-битное знаковое целое.
Пример 1
loads=[4, 1, 6, 5, 3] → 55

Отрезок [6, 5]: минимум 5, сумма 11, результат 55. Отрезок [6, 5, 3] даёт 3 · 14 = 42, а [6] — 36; больше 55 не получить.

Пример 2
loads=[2, 2, 2] → 12

Берём весь массив: 2 · 6 = 12.

Пример 3
loads=[1, 9, 1] → 81

Один элемент 9 даёт 9 · 9 = 81, а весь массив — лишь 1 · 11 = 11.

Ограничения
  • 1 ≤ len(loads) ≤ 10⁵
  • 1 ≤ loads[i] ≤ 10⁷
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПеревес тяжёлых смен СредняяСила бригад по слабому звену СложнаяПрямой обход дерева поиска СредняяНиз, пик и середина СредняяСледующее большее по кругу Средняя
загружаем Python…
Вход
loads=[4, 1, 6, 5, 3]
Ожидается
55

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