뒤섞인 항공권 정렬 (Small)

섞인 항공권을 도착지가 다음 출발지와 이어지는 하나의 여정으로 원래 순서대로 정렬합니다.

쉬움3해시맵그래프면접 대비아직 제출이 없습니다시간 제한5초메모리 제한512 MB

문제

메리는 여러 도시를 갈아타며 이동하는 편도 항공권 묶음을 샀다. 예를 들어 SFO->DFW, DFW->JFK, JFK->MIA, MIA->ORD처럼 앞 구간의 도착 공항이 바로 다음 구간의 출발 공항이 된다.

같은 도시를 두 번 이상 경유하는 일정은 의미가 없으므로 메리는 그런 일정을 사지 않는다.

항공권을 받은 뒤 메리는 항공권을 뒤섞어 버렸고 원래 순서를 잊었다. 뒤섞인 항공권을 실제 여정 순서대로 정렬하라.

입력

첫 줄에 테스트 케이스의 개수 TT가 주어진다. 이어서 TT개의 테스트 케이스가 주어진다.

각 테스트 케이스의 첫 줄에는 항공권의 개수 NN이 주어진다. 그다음 2N2N개의 줄에 항공권 NN장이 뒤섞인 순서로 주어진다. 항공권 한 장은 두 줄을 차지하며, 첫 줄은 출발 공항 코드, 둘째 줄은 도착 공항 코드다. 공항 코드는 알파벳 대문자 세 글자다.

출력

각 테스트 케이스마다 "Case #x: itinerary" 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, itinerary는 실제 여정 순서대로 나열한 구간 목록이다.

각 구간은 출발 공항 코드와 도착 공항 코드를 붙임표로 이어 "SFO-DFW" 형태로 쓰고, 구간과 구간 사이는 공백 한 칸으로 구분한다.

제한

  • 1T1001 \le T \le 100
  • 1N1001 \le N \le 100
  • 각 테스트 케이스의 항공권은 메리가 산 여정 하나를 뒤섞은 것이며, 항상 올바른 여정 하나로 복원된다.
  • 한 테스트 케이스 안에서 여정은 같은 도시를 두 번 방문하지 않으므로 정답은 유일하다.