Заправочные станции

MediumAlgo
05:00
Лучше работает на десктопе
GreedyArrays

На кольцевом маршруте расположены n заправочных станций. На станции i можно заправиться на gas[i] литров. Путь от станции i до станции i+1 стоит cost[i] литров.

Начиная с пустого бака, найдите индекс стартовой станции, с которой можно проехать весь маршрут по часовой стрелке. Если это невозможно, верните -1.

Гарантируется, что если решение существует, оно единственное.

Сигнатура

def can_complete_circuit(gas: list[int], cost: list[int]) -> int:

Примеры

can_complete_circuit([1, 2, 3, 4, 5], [3, 4, 5, 1, 2]) → 3
can_complete_circuit([2, 3, 4], [3, 4, 3]) → -1

Constraints

- 1 ≤ len(gas) ≤ 10⁵
- 0 ≤ gas[i], cost[i] ≤ 10⁴

Примеры

Пример 1

Вход:
gas = [1,2,3,4,5]
cost = [3,4,5,1,2]
Выход:3

Пример 2

Вход:
gas = [2,3,4]
cost = [3,4,3]
Выход:-1

Пример 3

Вход:
gas = [5,1,2,3,4]
cost = [4,4,1,5,1]
Выход:4
Консоль
Нажмите Run или Ctrl+Enter для запуска