#abc213d. [abc213_d]Takahashi Tour
[abc213_d]Takahashi Tour
题目描述
AtCoder 共有 个编号为 到 的城市和 条编号为 到 的道路。道路 双向连接城市 和城市 。保证通过道路可以从任意一对城市之间相互到达。
Takahashi 将从城市 出发,并按照以下方式进行旅行:
- 如果存在未被访问过的与当前城市直接相连的城市,他前往编号最小的那个城市;
- 否则,
- 如果他在城市 ,结束旅行;
- 否则,他前往刚刚访问过的当前城市之前的城市。
请找出 Takahashi 访问城市的顺序。
约束条件
- 通过道路可以从任意一对城市之间相互到达。
输入
输入采用以下格式从标准输入给出:
输出
按照访问顺序打印 Takahashi 访问城市的序列,包括旅行开始和结束时的城市 ,城市之间用空格隔开。
示例输入 1
4
1 2
4 2
3 1
示例输出 1
1 2 4 2 1 3 1
他的旅行过程如下:
- 开始于城市 。
- 与城市 直接相连的未被访问过的城市有城市 和 。前往编号较小的城市,即城市 。
- 与城市 直接相连的未被访问过的城市是城市 。前往城市 。
- 没有与城市 直接相连的未被访问过的城市。返回城市 。
- 没有与城市 直接相连的未被访问过的城市。前往上次访问城市 之前的城市,即城市 。
- 与城市 直接相连的未被访问过的城市是城市 。前往城市 。
- 没有与城市 直接相连的未被访问过的城市。返回城市 。
- 没有与城市 直接相连的未被访问过的城市。结束旅行。
示例输入 2
5
1 2
1 3
1 4
1 5
示例输出 2
1 2 1 3 1 4 1 5 1