Ctrl K

Прыжки по сундукам

Средняя
Вдоль тропы стоят сундуки, их содержимое — массив chests. В одних лежат монеты (положительное число), другие — ловушки и отнимают монеты (отрицательное число). Вы выбираете, с какого сундука начать. Открыв сундук с номером i, вы обязаны прыгнуть ровно на stride сундуков вперёд, к сундуку i + stride, и открыть его — и так, пока следующего сундука не окажется. Пропускать сундуки, на которые вы приземлились, или остановиться раньше нельзя. Верните наибольшую сумму, которую можно набрать.
Пример 1
chests=[4, -6, 3, 2, -1, 5], stride=2 → 7

Старт с сундука 1: -6 + 2 + 5 = 1. Старт с сундука 3: 2 + 5 = 7. Старт с сундука 0: 4 + 3 - 1 = 6. Лучше всего 7.

Пример 2
chests=[-4, -2, -7], stride=1 → -7

Все суммы отрицательны; меньше всего теряем, если начать с последнего сундука: -7. Начать с сундука 1 — -9.

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

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