아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

도미노 타일

시간 제한1초메모리 제한128 MB

요약
도미노 눈금의 차수를 세어 체인의 양쪽 끝 눈금을 구하고 하나로 정해지지 않으면 모호하다고 판정합니다.
난이도

보통10점 중 5점

유형
그래프, 해시맵
정답자
아직 제출이 없습니다

문제

아드리안은 도미노 타일을 한 줄로 이어 붙여 배열을 만든다. 각 타일은 두 개의 칸으로 나뉘어 있으며, 각 칸에는 눈(점)의 개수가 적혀 있다. 타일은 뒤집어(회전해) 놓을 수 있다. 타일은 줄의 양쪽 끝에 계속 이어 붙이는데, 서로 맞닿는 두 칸의 눈 개수가 같도록 붙여야 한다.

아드리안은 nn개의 타일을 가지고 있다. 이 타일을 모두 사용하면 언제나 올바른 한 줄을 만들 수 있다. 완성된 줄의 맨 앞 칸에 적힌 눈 개수 pp와 맨 뒤 칸에 적힌 눈 개수 kk가 무엇인지 궁금하다.

입력

첫째 줄에 도미노 타일의 개수 nn (1≤n≤1061 \le n \le 10^6)이 주어진다. 이어지는 nn개의 줄에는 각각 두 정수 aia_i, bib_i (1≤ai,bi≤1091 \le a_i, b_i \le 10^9)가 주어진다. 이는 ii번째 타일의 왼쪽 칸과 오른쪽 칸에 적힌 눈 개수를 뜻한다.

출력

완성된 줄의 양 끝 눈 개수 pp와 kk를 한 줄에 출력한다. p<kp < k이면 pp와 kk 순서로, 그렇지 않으면 kk와 pp 순서로 출력한다(즉 더 작은 값을 먼저 출력한다). 만약 양 끝 값이 유일하게 정해지지 않아 답이 여러 가지라면 대신 문자열 'NIE'를 출력한다.

예제3

  1. 예제 1

    입력
    4
    3 2
    3 4
    4 5
    1 2
    
    예상 출력
    1 5
    
  2. 예제 2

    입력
    1
    5 5
    
    예상 출력
    5 5
    
  3. 예제 3

    입력
    3
    1 2
    2 3
    3 1
    
    예상 출력
    NIE