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

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

Acrobat Reader

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

요약
각 테스트에서 두 점 집합이 90도 배수 회전, 평행이동, 양의 균일 확대만으로 겹칠 수 있는지, 거울 반사는 허용하지 않는다는 조건에서 판정한다.
난이도

보통10점 중 7점

유형
기하, 해시맵, 정렬, 수학
정답자
아직 제출이 없습니다

문제

공항에서는 여행객이 자신이 주장하는 사람이 맞는지 확인하기 위해 생체 정보를 사용한다. 다음 달 해외 순회를 앞둔 한 서커스단은 국경 심사에서 문제가 생길까 봐 걱정하고 있다. 곡예사들이 카메라 앞에 서면 얼굴이 어떤 방향으로 찍힐지 알 수 없기 때문이다. 곡예사는 항상 카메라를 정면으로 바라본다고 가정할 수 있지만, 촬영된 얼굴은 90도의 배수만큼 회전되어 있을 수 있다. 또한 다른 승객과 마찬가지로 사진은 평행이동되거나, 가로와 세로에 같은 비율로 확대·축소되어 있을 수도 있다.

여러 쌍의 생체 스캔이 주어진다. 각 쌍은 여권에서 얻은 스캔 하나와 현장에서 새로 촬영한 스캔 하나로 이루어진다. 각 곡예사에 대해 두 스캔이 일치하는지 판별하여라.

두 스캔은 한쪽을 0°0°, 90°90°, 180°180°, 270°270° 중 하나의 회전과 평행이동, 그리고 양의 균등 배율(확대·축소)만으로 다른 쪽에 완전히 겹칠 수 있을 때 일치한다. 좌우 반전(거울상)은 허용되지 않는다.

입력

첫째 줄에 테스트 케이스의 수를 나타내는 정수가 하나 주어진다.

각 테스트 케이스의 형식은 다음과 같다.

  • 한 곡예사의 두 스캔에 각각 들어 있는 점의 개수 NN (1≤N≤100001 \le N \le 10000)이 한 줄에 주어진다.
  • 이어지는 NN개의 줄에는 각 줄마다 정수 xix_i와 yiy_i (−10000≤xi,yi≤10000-10000 \le x_i, y_i \le 10000)가 주어진다. 이는 첫 번째 스캔(여권) 에 있는 한 점의 좌표이다.
  • 다시 NN개의 줄에는 각 줄마다 정수 xix_i와 yiy_i (−10000≤xi,yi≤10000-10000 \le x_i, y_i \le 10000)가 주어진다. 이는 두 번째 스캔(현장 촬영) 에 있는 한 점의 좌표이다.

한 줄에 있는 두 정수는 공백 하나로 구분된다. 하나의 스캔 안에서 완전히 같은 점은 존재하지 않으며, NN개의 점이 주어지는 순서는 임의이다.

출력

각 테스트 케이스마다 한 줄을 출력한다. 두 스캔이 일치하면 okay를, 일치하지 않으면 mismatch!를 출력한다.

예제7

  1. 예제 1

    입력
    2
    3
    -1 1
    0 -1
    1 0
    -1 0
    1 -2
    3 2
    3
    0 0
    2 1
    2 2
    0 0
    -2 1
    -2 2
    
    예상 출력
    okay
    mismatch!
    
  2. 예제 2

    입력
    2
    1
    7 7
    -4 9
    3
    0 0
    0 1
    1 0
    1 0
    0 0
    0 1
    
    예상 출력
    okay
    okay
    
  3. 예제 3

    입력
    4
    3
    0 0
    0 1
    1 0
    100 -50
    100 -49
    101 -50
    3
    0 0
    0 1
    1 0
    3 7
    2 7
    3 8
    3
    0 0
    0 1
    1 0
    -10 4
    -10 1
    -13 4
    3
    0 0
    0 1
    1 0
    7 5
    5 3
    5 5
    
    예상 출력
    okay
    okay
    okay
    okay
    
  4. 예제 4

    입력
    2
    4
    0 0
    1 0
    2 1
    3 3
    0 0
    -1 0
    -2 1
    -3 3
    4
    0 0
    1 0
    2 1
    3 3
    4 4
    4 2
    2 0
    -2 -2
    
    예상 출력
    mismatch!
    mismatch!
    
  5. 예제 5

    입력
    2
    3
    0 0
    0 1
    2 0
    0 0
    0 1
    1 0
    4
    0 0
    2 0
    2 2
    0 2
    0 0
    1 0
    1 3
    0 3
    
    예상 출력
    mismatch!
    mismatch!
    
  6. 예제 6

    입력
    1
    5
    0 0
    3 0
    0 3
    -3 0
    0 -3
    9 9
    9 15
    3 9
    9 3
    15 9
    
    예상 출력
    okay
    
  7. 예제 7

    입력
    5
    3
    0 0
    0 1
    1 0
    -3 -3
    -3 -8
    -8 -3
    4
    0 0
    1 0
    2 1
    3 3
    0 0
    -1 0
    -2 1
    -3 3
    1
    1 1
    9 9
    2
    0 0
    10 0
    2 2
    2 -38
    3
    0 0
    0 1
    2 0
    0 0
    0 2
    1 0
    
    예상 출력
    okay
    mismatch!
    okay
    okay
    mismatch!