#tctm1884. 骑马修栅栏

    ID: 3210 传统题 1000ms 512MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>图论基础第二十三讲(Level3)GESP 7级

骑马修栅栏

骑马修栅栏

题目描述

农民 John 每年有很多栅栏要修理。他总是骑着马穿过每一个栅栏并修复它破损的地方。

John 是一个与其他农民一样懒的人。他讨厌骑马,因此从来不两次经过一个栅栏。你必须编一个程序,读入栅栏网络的描述,并计算出一条修栅栏的路径,使每个栅栏都恰好被经过一次。John 能从任何一个顶点开始骑马,在任意一个顶点结束。

每一个栅栏连接两个顶点,顶点用 11500500 标号。所有栅栏都是连通的。

你的程序必须输出骑马的路径(用路上依次经过的顶点号码表示)。当存在多组解的情况下,输出 500500 进制表示法中最小的一个。

输入格式

11 行:一个整数 FF1F10241 \le F \le 1024),表示栅栏的数目;第 22F+1F+1 行:每行两个整数 i,ji, j1i,j5001 \le i, j \le 500)表示这条栅栏连接 iijj 号顶点。

输出格式

输出应当有 F+1F+1 行,每行一个整数,依次表示路径经过的顶点号。

样例输入 #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

数据范围

1F10241 \le F \le 10241i,j5001 \le i, j \le 500

知识点与难度

本题涉及的知识点从属于 GESP 七级(图论基础、欧拉路径),难度等级:⭐⭐⭐⭐


测试点分布

Subtask 分值 测试点编号 说明
0 10 1~2 样例
1 20 3~8 小规模 / 特殊性质
2 15 9~11 Hack
3 30 12~20 中大规模
4 25 21~25 随机回归