eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Мороженое

Мороженое

По дороге в школу Петя любит забегать в киоск и покупать себе мороженое. Однако при этом он часто опаздывает в школу. Неожиданно Петя понял -- он просто ходит не по кратчайшему пути! Помогите Пете победить опоздания. Город можно представить как \textbf{n} перекрестков, соединенных \textbf{m} улицами, про каждую улицу известна ее длина. Дом Пети находится на перекрестке \textbf{a}, школа -- на перекрестке \textbf{b}, а киоск с мороженым -- на перекрестке \textbf{c}. По пути в школу Петя никогда не проходит через один перекресток дважды. \InputFile Первая строка входного файла содержит числа \textbf{n} и \textbf{m} (\textbf{3} ≤ \textbf{n} ≤ \textbf{30000}, \textbf{0} ≤ \textbf{m} ≤ \textbf{50000}). Вторая строка содержит три различных числа -- \textbf{a}, \textbf{b} и \textbf{c}. Следующие \textbf{m} строк содержат по три целых числа \textbf{x_i}, \textbf{y_i} и \textbf{l_i} -- номера перекрестков, соединенных улицей и ее длину (длина -- целое положительное число, которое не превышает \textbf{10^4}). \OutputFile Если путь из дома Пети до школы, проходящий через перекресток с мороженым и не проходящий по одному перекрестку два раза, существует, выведите на первой строке выходного файла два целых числа \textbf{k} и \textbf{l} -- количество улиц, которые проходит Петя в оптимальном пути и длину пути. На второй строке выведите номера перекрестков в том порядке, в котором их посещает Петя. В противном случае выведите \textbf{-1} на первой строке выходного файла.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB