안전한 여행
시간 제한2초메모리 제한1024 MB
정점 n개와 간선 m개로 시작 정점에서 모든 정점을 방문하고 다시 돌아오는 그래프를 만들거나, 불가능하면 Impossible을 출력합니다.
문제
리크는 행성 여러 개로 이루어진 우주를 꿈에서 보았다. 일부 행성 사이에는 길이 있고, 두 행성 사이의 길은 최대 하나이다. 각 길은 양방향으로 이동할 수 있다. 리크는 행성 에서 여행을 시작하고, 아직 방문하지 않은 행성으로 길을 따라 이동하는 일을 반복한다. 같은 행성을 두 번 방문하지 않는다. 방문하지 않은 행성으로 더 이동할 수 없으면, 현재 행성에서 로 길이 있을 때 로 돌아간다.
리크는 이 우주가 안전하다는 것을 알아챘다. 이 전략으로 여행하면 항상 개의 행성을 모두 방문하고, 출발 행성 에서 여행을 끝낸다는 뜻이다.
잠에서 깬 뒤 리크는 어떤 행성끼리 길로 연결되어 있었는지 기억하지 못한다. 기억하는 것은 우주에 행성이 개, 길이 개 있었다는 사실뿐이다.
행성이 정확히 개이고 길이 정확히 개인 안전한 우주를 하나 만들거나, 불가능하다고 판단하라.
입력
첫 줄에 행성의 수 과 길의 수 인 두 자연수가 주어진다. (, )
출력
조건을 만족하는 우주가 존재하면 첫 줄에 Possible을 출력한다. 이어서 개의 줄을 출력하며, 번째 줄에는 길로 연결되는 두 행성의 번호 와 ()를 공백 한 칸으로 구분해 쓴다. 모든 무순서쌍 는 서로 달라야 한다.
존재하지 않으면 Impossible을 출력한다.