Дорога в школу
Город нефтяников состоит из N пронумерованных площадей, некоторые пары которых соединены улицами. Длина каждой улицы известна. Известно также, что не существует такой улицы, которая соединяет площадь саму с собой. По любой улице можно двигаться в двух направлениях, между любой парой площадей существует не более одной улицы.
По историческим причинам все дома жителей и учреждения города размещаются только на площадях. В частности, школа находится на площади с номером 1. По давно устоявшейся в городе традиции многие школьники стараются ходить в школу вместе. K ребят из одного класса решили этой традиции не изменять, но так как их дома расположены на разных площадях, то какую-то часть пути они всё равно проходили порознь. Более того, в силу климатических условий, каждый из них добирался от дома до школы только кратчайшим путём.
Требуется написать программу, которая вычисляет наибольшее расстояние, которое ребята могут пройти вместе.
Входные данные
В первой строке входного файла записаны три целых числа: N, M и K (1 ≤ N ≤ 1000, 1 ≤ M ≤ 10000, 1 ≤ K ≤ 100), где N — количество площадей в городе, M — количество дорог, а K - количество одноклассников. Во второй строке содержатся K натуральных чисел от 1 до N, определяющих номера площадей, на которых расположены дома K одноклассников. Далее в М строках описаны дороги. Каждая дорога задаётся тройкой чисел — номерами соединённых площадей и длиной. Длина является натуральным числом, не превосходящим 1000. Все числа в строках разделены пробелами. Гарантируется, что любой из K школьников может дойти от дома до школы по имеющимся в городе дорогам.
Выходные данные
В выходной файл необходимо вывести наибольшее расстояние, которое одноклассники смогут пройти вместе по пути от своих домов до школы.