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"\) (不包括引号)。

如果有多个解决方案,则允许输出其中任何一个。具体来说,先写哪个数字来描述顺序并不重要。无论你是顺时针还是逆时针写数字,这也无关紧要。


2022-01-12 14:22 撰写于洛谷,2025-08-25 17:03 迁移至博客园。

posted @ 2025-08-25 17:05  Jerrycyx  阅读(7)  评论(0)    收藏  举报