H. Заправки
2000 мс · 256 МБ · всё или ничего
В стране городов, соединённых дорогами. Проезд по одной дороге тратит ровно один бак бензина. Кроме бака есть канистра той же вместимости — ровно на одну заправку бака.
В городе бак стоит . В каждом городе можно: заправить бак, заправить бак и канистру сразу, или перелить бензин из канистры в бак — переливание бесплатно. Доберитесь из города 1 в город , потратив как можно меньше денег.
Формат ввода
Первая строка содержит число ().
Вторая строка — чисел ().
Третья строка — число дорог , далее строк с парами городов. Дороги двусторонние, между парой городов не более одной дороги, петель нет.
Формат вывода
Одно число — наименьшая суммарная стоимость или .
Примеры
ввод
4 1 10 2 15 4 1 2 1 3 4 2 4 3
вывод
2
ввод
2 1 1 0
вывод
-1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.