eolymp
bolt
Try our new interface for solving problems
Məsələlər

Почтальон

Почтальон

В городе есть \textbf{n} площадей, соединенных улицами. При этом количество улиц не превышает ста тысяч и существует не более трех площадей, на которые выходит нечетное число улиц. Для каждой улицы известна ее длина. По улицам разрешено движение в обе стороны. В городе есть хотя бы одна улица. От любой площади до любой можно дойти по улицам. Почтальону требуется пройти хотя бы один раз по каждой улице так, чтобы длина его пути была наименьшей. Он может начать движение на любой площади и закончить также на любой (в том числе и на начальной). \InputFile Первая строка входного файла содержит натуральное число \textbf{n} --- количество площадей в городе (\textbf{1} ≤ \textbf{n} ≤ \textbf{1000}). Далее следуют \textbf{n} строк, задающих улицы. В \textbf{i}-ой из этих строк находится число \textbf{m_i} --- количество улиц, выходящих из площади \textbf{i}. Далее следуют \textbf{m_i} пар положительных чисел. В \textbf{j}-ой паре первое число --- номер площади, в которую идет \textbf{j}-ая улица с \textbf{i}-ой площади, а второе число --- длина этой улицы. Между двумя площадями может быть несколько улиц, но не может быть улиц с площади на нее саму. Все числа во входном файле не превосходят \textbf{10^5}. \OutputFile Если решение существует, то в первую строку выходного файла выведите одно число --- количество улиц в искомом маршруте (считая первую и последнюю), а во вторую --- номера площадей в порядке их посещения. Если решений нет, выведите в выходной файл одно число \textbf{-1}. Если решений несколько, выведите любое.
Zaman məhdudiyyəti 2 saniyə
Yaddaşı istafadə məhdudiyyəti 256 MiB
Giriş verilənləri #1
4
2 2 1 2 2
4 1 2 4 4 3 5 1 1
2 2 5 4 8
2 3 8 2 4
Çıxış verilənləri #1
5
1 2 4 3 2 1
Müəllif Виталий Гольдштейн
Mənbə Зимняя школа, Харьков 2011, День 9