#LT1884. 骑马修栅栏
骑马修栅栏
骑马修栅栏
题目描述
农民 John 每年有很多栅栏要修理。他总是骑着马穿过每一个栅栏并修复它破损的地方。
John 是一个与其他农民一样懒的人。他讨厌骑马,因此从来不两次经过一个栅栏。你必须编一个程序,读入栅栏网络的描述,并计算出一条修栅栏的路径,使每个栅栏都恰好被经过一次。John 能从任何一个顶点开始骑马,在任意一个顶点结束。
每一个栅栏连接两个顶点,顶点用 到 标号。所有栅栏都是连通的。
你的程序必须输出骑马的路径(用路上依次经过的顶点号码表示)。当存在多组解的情况下,输出 进制表示法中最小的一个。
输入格式
第 行:一个整数 (),表示栅栏的数目;第 到 行:每行两个整数 ()表示这条栅栏连接 与 号顶点。
输出格式
输出应当有 行,每行一个整数,依次表示路径经过的顶点号。
样例输入 #1
9
1 2
2 3
3 4
4 2
4 5
2 5
5 6
5 7
4 6
样例输出 #1
1
2
3
4
2
5
4
6
5
7
数据范围
,。
知识点与难度
本题涉及的知识点从属于 GESP 七级(图论基础、欧拉路径),难度等级:⭐⭐⭐⭐。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1~2 | 样例 |
| 1 | 20 | 3~8 | 小规模 / 特殊性质 |
| 2 | 15 | 9~11 | Hack |
| 3 | 30 | 12~20 | 中大规模 |
| 4 | 25 | 21~25 | 随机回归 |