Ctrl K

Кратчайший путь по кольцу

Лёгкая
Кольцевая линия метро состоит из n станций с номерами от 0 до n − 1. Поезда ходят в обе стороны. segments[i] — длина перегона между станцией i и станцией (i + 1) mod n. Верните длину кратчайшего пути от станции start до станции finish. Если это одна и та же станция, ответ 0.
Пример 1
segments=[3, 8, 2, 5], start=1, finish=3 → 8

По часовой: 8 + 2 = 10, против часовой: 3 + 5 = 8. Ответ 8.

Пример 2
segments=[6, 1, 4], start=2, finish=0 → 4

Из станции 2 в станцию 0 напрямую по участку длиной 4, а в обход — 6 + 1 = 7.

Пример 3
segments=[7, 7], start=1, finish=1 → 0
Ограничения
  • 1 ≤ n = len(segments) ≤ 10⁴
  • 0 ≤ segments[i] ≤ 10⁴
  • 0 ≤ start, finish < n
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПара с заданной суммой ЛёгкаяСжать повторы в отсортированном массиве ЛёгкаяВыкинуть лишнее значение ЛёгкаяМесто на отсортированной полке ЛёгкаяПрибавить единицу к числу из цифр Лёгкая
загружаем Python…
Вход
segments=[3, 8, 2, 5], start=1, finish=3
Ожидается
8

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