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

Листоноша

Листоноша

У місті є \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}. Якщо розв'язків декілька, виведіть довільний.
Ліміт часу 2 секунди
Ліміт використання пам'яті 256 MiB
Вхідні дані #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
Вихідні дані #1
5
1 2 4 3 2 1
Автор Віталій Гольдштейн
Джерело Зимова Школа, Харків 2011, День 9