АВТ
Language:

Remote Training on Programming

Problems On-line status Contests FAQ
For authors:
Register  ||  Login
 
Hello, Guest! Login or register.

75. Gamiltonian Cycle

Time Limit: 1 seconds
Memory Limit:64000KB
Points:10
View Problem Statistics Submit Problem added Administrator

Изначально компьютерная сеть некоторой организации имела вид дерева, то есть от любого устройства сети до любого другого существовал единственный путь передачи данных. Для улучшения работы сети и повышения её надёжности было решено дополнительно соединить между собой те пары устройств, которые ещё не соединены напрямую, но расположены друг от друга достаточно близко. Термин "достаточно близко" определяется так: если кратчайший путь между двумя устройствами A и B проходит не более чем через два промежуточных устройства, то они считаются близкими (реальную длину кабелей учитывать не стали, поскольку она ограничена некоторой константой в силу физических причин). Пример исходной сети и сети после модернизации показан на рисунке:

 

Получив сеть такой слегка странной топологии, было решено исследовать её свойства. Одним из возникших вопросов был следующий: можно ли в данной сети организовать передачу по кольцу, т.е. существует ли такой путь, по которому пакет с данными проходит через все устройства сети по одному разу и возвращается в устройство-отправитель (т.е. существует ли в сети гамильтонов цикл).

 

Дана исходная структура сети, требуется определить, найдётся ли в этой сети после модернизации гамильтонов цикл, и если найдётся, то вывести один из них.

 

В первой строке входного файл находится число N — количество вершин дерева (3 <= N <= 100). Следующая N – 1 строка описывает рёбра дерева. В каждой строке содержатся два числа, ui и vi (от 1 до N) — номера вершин, соединённых данным ребром.

В первой строке выходного файла выведите слово "YES", если гамильтонов цикл существует, или "NO" в противном случае. Если цикл существует, то выведите его в следующей строке как N + 1 номер вершин (в порядке прохождения цикла), разделённых пробелами (первая вершина должна совпадать с последней). Если решений несколько, выведите любое из них.

Пример

STDIN

STDOUT

6

1 2

3 2

2 4

4 5

5 6

YES

3 5 4 6 2 1 3

 

 


View Problem Statistics Submit Author/source:
Problems from Contests / Vologda Students Contests / VIII InterUni Contest 2005 /
74. B - Circle and Points 75. 76. D - SMS 77. E - Danger Pairs 78. F - Lexicographical order
We can all benefit by doing occasional "toy" programs, when artificial restrictions are set up, so that we are forced to push our abilities to the limit. The art of tackling miniproblems with all our energy will sharpen our talents for the real problems. Donald E. Knuth.
time generating 0.11 sec.
© Copyright VSTU, AVT, Nosov D.A.