

Time Limit: 2 sec / Memory Limit: 1024 MB
配点 : 点
問題文
AtCoder 国には から の番号がついた 個の都市と、 から の番号がついた 個の道路があります。
道路 を通ると都市 と都市 の間を相互に移動することができます。全ての都市は道路を使って互いに行き来できることが保証されます。
高橋くんは都市 を出発し、次のルールで旅をします。
- いまいる都市と道路で直接つながっている都市のうち、まだ訪れたことがない都市が存在するとき、そのような都市のうち番号が最も小さい都市へ移動する
- そのような都市が存在しないとき
- いまいる都市が都市 なら旅を終了する
- そうでないなら、いまいる都市を初めて訪れたときに直前にいた都市へ移動する
高橋くんが旅の過程で訪れる都市を順に答えてください。
制約
- 全ての都市は道路を使って互いに行き来できる
入力
入力は以下の形式で標準入力から与えられる。
出力
高橋くんが訪れる都市を、旅の開始時及び終了時の都市 も含めて順に空白区切りで出力せよ。
入力例 1Copy
4 1 2 4 2 3 1
出力例 1Copy
1 2 4 2 1 3 1
高橋くんの旅は次のようになります。
- 最初都市 にいます。
- 都市 から道路で直接つながっている都市のうち未訪問なのは都市 です。番号が小さい都市 へ移動します。
- 都市 から道路で直接つながっている都市のうち未訪問なのは都市 です。都市 へ移動します。
- 都市 から道路で直接つながっている都市のうち未訪問の都市はありません。直前にいた都市 へ移動します。
- 都市 から道路で直接つながっている都市のうち未訪問の都市はありません。初めて都市 に来る直前にいた都市 へ移動します。
- 都市 から道路で直接つながっている都市のうち未訪問なのは都市 です。都市 へ移動します。
- 都市 から道路で直接つながっている都市のうち未訪問の都市はありません。直前にいた都市 へ移動します。
- 都市 から道路で直接つながっている都市のうち未訪問の都市はありません。旅を終了します。
入力例 2Copy
5 1 2 1 3 1 4 1 5
出力例 2Copy
1 2 1 3 1 4 1 5 1
Score : points
Problem Statement
The Republic of AtCoder has cities numbered through and roads numbered through . Road connects City and City bidirectionally. It is guaranteed that one can travel between every pair of cities using roads.
Takahashi will depart City and have a journey by repeating the following.
- If there are unvisited cities that are directly connected to the city Takahashi is in now, he goes to the city with the smallest number among those cities.
- Otherwise,
- if he is in City , he ends the journey;
- otherwise, he goes to the city he was in just before visiting the current city for the first time.
Find the sequence of cities visited by Takahashi in the order he visits them.
Constraints
- It is possible to travel between every pair of cities using roads.
Input
Input is given from Standard Input in the following format:
Output
Print the sequence of cities visited by Takahashi in the order he visits them, including City at the beginning and end of the journey, with spaces in between.
Sample Input 1Copy
4 1 2 4 2 3 1
Sample Output 1Copy
1 2 4 2 1 3 1
His journey will be as follows.
- Start in City .
- The unvisited cities directly connected to City are City and . Go to the city with the smaller number, that is, City .
- The unvisited city directly connected to City is City . Go there.
- There is no unvisited city directly connected to City . Go back to City .
- There is no unvisited city directly connected to City . Go to City , where he was in just before visiting City for the first time.
- The unvisited city directly connected to City is City . Go there.
- There is no unvisited city directly connected to City . Go back to City .
- There is no unvisited city directly connected to City . End the journey.
Sample Input 2Copy
5 1 2 1 3 1 4 1 5
Sample Output 2Copy
1 2 1 3 1 4 1 5 1