Вам дана карта, состоящая из n городов и m двунаправленных дорог, соединяющих эти города. У каждой дороги есть неотрицательная целочисленная длина, обозначенная . Ваша задача — найти кратчайший путь между городом 1 и городом n.
💡
Обратите внимание: в этой задаче требуется найти и длину кратчайшего пути, и сам путь.
Вход
Первая строка содержит два разделённых пробелом целых числа, n и m (), обозначающих количество городов и количество дорог соответственно.
Следующие m строк содержат по три разделённых пробелом целых числа , и , описывающих дорогу между городами и длиной ().
Выход
Необходимо вывести два числа, k и l, разделённые пробелом. Здесь k — количество городов в кратчайшем пути, а l — общая длина этого пути.
На следующей строке выведите k разделённых пробелом целых чисел, соответствующих городам, расположенным на этом кратчайшем пути.
Если существует несколько кратчайших путей, разрешается вывести любой из них. Кроме того, нет необходимости минимизировать число k.