얼어붙은 일정
시간 제한3초메모리 제한1024 MB
1번 집에서 출발해 모든 집을 한 번씩 방문하는 순서를 찾습니다. 도로 이동과 비도로 이동의 전환은 한 번 이하여야 합니다.
문제
눈이 많이 내리고 몹시 추운 겨울, 집이 채 있는 마을이 있다. 이른 새벽이라 모두 잠들어 있다. 땅에는 눈이 깊이 쌓여 있지만, 집과 집을 잇는 개의 도로 위에는 눈이 없다. 깨어 있는 사람은 토마스뿐이다.
우편배달부 토마스는 마을의 채 집에 모두 우편을 전달해야 한다. 집에는 1번부터 번까지 번호가 붙어 있다. 토마스는 자기 집(1번 집)에서 출발해 나머지 집을 원하는 순서대로 모두 방문한다. 도로로 연결된 두 집 사이는 자전거로 이동할 수 있고, 도로로 연결되지 않은 두 집 사이는 스키로 이동할 수 있다. 다만 도로 위에서는 스키를 쓸 수 없고, 도로 바깥에서는 자전거를 쓸 수 없다. 자전거와 스키를 바꾸는 일은 번거로워서 최대 한 번만 바꾸려고 한다.
집의 순서 을 찾아라. 단, 이어야 하며, 다음 중 하나가 성립하는 인덱스 ()가 최대 하나만 있어야 한다.
- 과 는 도로로 연결되어 있지만, 와 은 연결되어 있지 않다.
- 과 는 도로로 연결되어 있지 않지만, 와 은 연결되어 있다.
즉, 순서는 1에서 시작하며 도로를 따라가는 이동과 그렇지 않은 이동 사이를 최대 한 번만 바꾼다.
입력
첫 줄에 집의 수 과 도로의 수 이 주어진다(, ).
이어지는 개의 줄에는 각각 두 정수 , ()가 주어지며, 와 가 도로로 연결되어 있음을 뜻한다. 도로는 양방향으로 사용할 수 있고, 무순서쌍 는 모두 서로 다르다.
모든 입력에 대해 조건을 만족하는 순서가 존재한다.
출력
방문 순서 을 한 줄에 출력한다. 첫 번째 수 은 반드시 1이어야 한다.