Codeforces Round 368 (Div. 2) |
---|
Закончено |
Маша хочет открыть свою пекарню и печь пирожки в одном из n городов, пронумерованных от 1 до n. Также существует m двунаправленных дорог, каждая из которых соединяет некоторую пару городов. Чтобы печь пирожки, Маше нужно наладить регулярные поставки муки со склада. Всего существует k складов, расположенных в различных городах с номерами a1, a2, ..., ak.
К сожалению, законы страны, в которой живет Маша, не позволяют открывать пекарню в любом из городов, где есть склад. Открыть ее можно только в одном из остальных n - k городах, при этом, само собой, за доставку муки нужно платить — за каждый километр пути от склада до пекарни Маша заплатит 1 рубль.
Формально, Маша заплатит x рублей, если она откроет пекарню в городе b (ai ≠ b для любого 1 ≤ i ≤ k) и выберет склад в городе s (s = aj для некоторого 1 ≤ j ≤ k), а между городами b и s существует путь по дорогам суммарной длины x (если путей несколько, Маша вправе выбирать, какой именно путь будет использован).
Маша — крайне бережливый и рациональный человек. Ее интересует тот город, при открытии пекарни в котором (и выборе одного из k складов и пути между городом с пекарней и городом со складом) платить за доставку ей придется меньше всего. Помогите Маше найти сумму, которую она заплатит в этом случае.
В первой строке содержится три целых числа n, m и k (1 ≤ n, m ≤ 105, 0 ≤ k ≤ n) — число городов в стране Маши, число дорог между ними и число складов с мукой соответственно.
Далее следуют m строк. Каждая из них содержит три целых числа u, v и l (1 ≤ u, v ≤ n, 1 ≤ l ≤ 109, u ≠ v), означающих, что между городами с номерами u и v существует двунаправленная дорога длины l километров .
Если k > 0, то в последней строке содержатся k различных целых чисел a1, a2, ..., ak (1 ≤ ai ≤ n) — номера городов, в которых располагаются склады с мукой. Если k = 0, то описанная строка отсутствует.
В единственной строке выведите минимальную цену, которую придется заплатить Маше за доставку муки.
Если открыть пекарню, удовлетворив необходимым условиям, ни в одном из n городов невозможно, в единственной строке выведите - 1.
5 4 2
1 2 5
1 2 3
2 3 4
1 4 10
1 5
3
3 1 1
1 2 3
3
-1
Иллюстрация к первому примеру из условия. Темным цветом выделены города со складами и дорога, длина которой является ответом.
Название |
---|