AT_abc213_d [ABC213D] Takahashi Tour
题目描述
在 AtCoder 国,有 $N$ 个城市,编号为 $1$ 到 $N$,以及 $N-1$ 条道路,编号为 $1$ 到 $N-1$。
通过第 $i$ 条道路,可以在城市 $A_i$ 和城市 $B_i$ 之间双向移动。保证所有城市之间都可以通过道路互相到达。
高桥君从城市 $1$ 出发,按照以下规则进行旅行:
- 如果当前所在城市与之直接相连的城市中,存在尚未访问过的城市,则前往这些城市中编号最小的城市。
- 如果不存在这样的城市:
- 如果当前城市是城市 $1$,则结束旅行。
- 否则,返回到第一次到达当前城市时所处的前一个城市。
请按顺序输出高桥君在旅行过程中访问的城市,包括旅行开始和结束时的城市 $1$。
输入格式
输入以如下格式从标准输入读入:
> $N$
> $A_1$ $B_1$
> $\vdots$
> $A_{N-1}$ $B_{N-1}$
输出格式
请按顺序输出高桥君访问的城市编号(包括旅行开始和结束时的城市 $1$),用空格分隔。
说明/提示
## 限制条件
- $2 \leq N \leq 2 \times 10^5$
- $1 \leq A_i, B_i \leq N$
- 保证所有城市之间都可以通过道路互相到达
## 样例解释 1
高桥君的旅行过程如下:
- 最初在城市 $1$。
- 与城市 $1$ 直接相连且未访问的城市有 $2, 3$,选择编号最小的城市 $2$ 前往。
- 与城市 $2$ 直接相连且未访问的城市有 $4$,前往城市 $4$。
- 与城市 $4$ 直接相连且未访问的城市没有,返回到上一次在城市 $4$ 前所处的城市 $2$。
- 与城市 $2$ 直接相连且未访问的城市没有,返回到上一次在城市 $2$ 前所处的城市 $1$。
- 与城市 $1$ 直接相连且未访问的城市有 $3$,前往城市 $3$。
- 与城市 $3$ 直接相连且未访问的城市没有,返回到上一次在城市 $3$ 前所处的城市 $1$。
- 与城市 $1$ 直接相连且未访问的城市没有,旅行结束。
由 ChatGPT 4.1 翻译