100 atcoder#ABC213D. [ABC213D] Takahashi Tour

[ABC213D] Takahashi Tour

配点 : 400400

問題文

AtCoder 国には 11 から NN の番号がついた NN 個の都市と、11 から N1N-1 の番号がついた N1N-1 個の道路があります。 道路 ii を通ると都市 AiA_i と都市 BiB_i の間を相互に移動することができます。全ての都市は道路を使って互いに行き来できることが保証されます。

高橋くんは都市 11 を出発し、次のルールで旅をします。

  • いまいる都市と道路で直接つながっている都市のうち、まだ訪れたことがない都市が存在するとき、そのような都市のうち番号が最も小さい都市へ移動する
  • そのような都市が存在しないとき- いまいる都市が都市 11 なら旅を終了する
    • そうでないなら、いまいる都市を初めて訪れたときに直前にいた都市へ移動する

高橋くんが旅の過程で訪れる都市を順に答えてください。

制約

  • 2N2×1052 \leq N \leq 2\times 10^5
  • 1Ai,BiN1\leq A_i,B_i \leq N
  • 全ての都市は道路を使って互いに行き来できる

入力

入力は以下の形式で標準入力から与えられる。

NN

A1A_1 B1B_1

\vdots

AN1A_{N-1} BN1B_{N-1}

出力

高橋くんが訪れる都市を、旅の開始時及び終了時の都市 11 も含めて順に空白区切りで出力せよ。

4
1 2
4 2
3 1
1 2 4 2 1 3 1

高橋くんの旅は次のようになります。

  • 最初都市 11 にいます。
  • 都市 11 から道路で直接つながっている都市のうち未訪問なのは都市 2,32,3 です。番号が小さい都市 22 へ移動します。
  • 都市 22 から道路で直接つながっている都市のうち未訪問なのは都市 44 です。都市 44 へ移動します。
  • 都市 44 から道路で直接つながっている都市のうち未訪問の都市はありません。直前にいた都市 22 へ移動します。
  • 都市 22 から道路で直接つながっている都市のうち未訪問の都市はありません。初めて都市 22 に来る直前にいた都市 11 へ移動します。
  • 都市 11 から道路で直接つながっている都市のうち未訪問なのは都市 33 です。都市 33 へ移動します。
  • 都市 33 から道路で直接つながっている都市のうち未訪問の都市はありません。直前にいた都市 11 へ移動します。
  • 都市 11 から道路で直接つながっている都市のうち未訪問の都市はありません。旅を終了します。
5
1 2
1 3
1 4
1 5
1 2 1 3 1 4 1 5 1