Ctrl K

Длинные отрезки с наибольшей суммой

Средняя
Дан массив values и числа count и min_len. Выберите ровно count непересекающихся отрезков (непрерывных подмассивов), каждый длиной не меньше min_len, так чтобы сумма всех элементов в выбранных отрезках была наибольшей. Верните эту наибольшую сумму. Элементы между отрезками можно пропускать.
Пример 1
values=[4, -1, 2, -9, 3, 3], count=2, min_len=2 → 11

Берём [4, -1, 2] с суммой 5 и [3, 3] с суммой 6. Итого 11.

Пример 2
values=[-5, -2, -7], count=3, min_len=1 → -14

Три отрезка из трёх элементов — каждый элемент сам по себе: −5 − 2 − 7 = −14.

Пример 3
values=[1, 2, 3, 4], count=1, min_len=3 → 10
Ограничения
  • 1 ≤ len(values) ≤ 2000
  • -10⁴ ≤ values[i] ≤ 10⁴
  • 1 ≤ min_len ≤ 3
  • 1 ≤ count ≤ ⌊len(values) / min_len⌋
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиРазрез с лучшими средними СредняяРастущий лимит на сундуки СредняяОтрезки с нечётной суммой СредняяЗатишье до и после СредняяТочки на дне долины Средняя
загружаем Python…
Вход
values=[4, -1, 2, -9, 3, 3], count=2, min_len=2
Ожидается
11

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