CF263C Circle of Numbers
题目描述
有一天,Vasya走到黑板前,把 $1$ 到 $n$ 之间的不同整数按一定的顺序画成一个圆圈。然后他画弧来连接整数对 $(a,b)\ (a≠b)$,它们要么在圆相邻,要么有数字 $c$,使得 $a$ 和 $c$ 相邻,并且 $b$ 和 $c$ 相邻。易得出,瓦西亚最后画了 $2n$ 条弧。
例如,如果将数字 $1,2,3,4,5$ 以顺时针方向写入圆中,则弧将连接整数对 $(1,2)$,$(2,3)$,$(3,4)$,$(4,5)$,$(5,1)$,$(1,3)$,$(2,4)$,$(3,5)$,$(4,1)$ 和 $(5,2)$。
后来,黑板上的数字被抹去了。但 Vasya 发现了一张纸,上面写着 $2n$ 个整数对,它们对应着原来黑板上的每个圆弧相联的数对。Vasya 要求您通过这些数对查找圆圈中原有的数字顺序。
输入格式
输入的第一行包含一个整数 $n ( 5 \le n \le 10^5 ) $。这表明,黑板上写了多少个数字。接下来的2.n行包含整数对 $a_i,b_i\ ( 1 \le a_i,b_i \le n \ , a_i \not = b_i )$ ——由弧连接的数字。
可以保证输入中不会出现由圆弧连接的一对整数超过一次。
数字对和其中的数字按任意顺序给出。
输出格式
输出从 $1$ 到 $n$ 的 $n$ 个不同整数的任意合适序列,若无法根据题意将 $1$ 到 $n$ 之间的数字放在圆圈上,则输出 $"- \! 1"$ (不包括引号)。
如果有多个解决方案,则允许输出其中任何一个。具体来说,先写哪个数字来描述顺序并不重要。无论你是顺时针还是逆时针写数字,这也无关紧要。