start = [x, y] и хотите попасть в точку finish. Пешком из точки (x1, y1) в точку (x2, y2) идти стоит |x2 - x1| + |y2 - y1|.
Кроме того, есть туннели: tunnels[i] = [x1, y1, x2, y2, cost] — односторонний туннель из точки (x1, y1) в точку (x2, y2), проезд стоит cost. Каждым туннелем можно пользоваться сколько угодно раз, а можно не пользоваться вовсе.
Верните минимальную стоимость пути из start в finish.start=[1, 1], finish=[9, 3], tunnels=[[2, 1, 8, 3, 2], [8, 3, 1, 1, 1]] → 4
Пешком до входа первого туннеля (2, 1) — 1, туннель — 2, от выхода (8, 3) до финиша — 1. Итого 4 вместо 10 пешком. Второй туннель ведёт в обратную сторону и не помогает.
start=[5, 5], finish=[6, 7], tunnels=[[5, 5, 6, 7, 10]] → 3
Туннель стоит 10, а пешком всего |6 − 5| + |7 − 5| = 3.
start=[1, 1], finish=[20, 20], tunnels=[[1, 2, 10, 10, 3], [10, 11, 20, 19, 3], [12, 12, 1, 1, 1]] → 9
start=[1, 1], finish=[9, 3], tunnels=[[2, 1, 8, 3, 2], [8, 3, 1, 1, 1]]
4
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 57 тестов на сервере, включая скрытые.