EduBrick

H. Заправки

2000 мс · 256 МБ · всё или ничего

В стране nn городов, соединённых дорогами. Проезд по одной дороге тратит ровно один бак бензина. Кроме бака есть канистра той же вместимости — ровно на одну заправку бака.

В городе ii бак стоит cic_i. В каждом городе можно: заправить бак, заправить бак и канистру сразу, или перелить бензин из канистры в бак — переливание бесплатно. Доберитесь из города 1 в город nn, потратив как можно меньше денег.

Формат ввода

Первая строка содержит число nn (1≤n≤1001 \le n \le 100).

Вторая строка — nn чисел cic_i (0≤ci≤1000 \le c_i \le 100).

Третья строка — число дорог MM, далее MM строк с парами городов. Дороги двусторонние, между парой городов не более одной дороги, петель нет.

Формат вывода

Одно число — наименьшая суммарная стоимость или −1-1.

Примеры

ввод
4
1 10 2 15
4
1 2
1 3
4 2
4 3
вывод
2
ввод
2
1 1
0
вывод
-1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.