두 개의 공 게임

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

요약
n개의 점이 주어질 때, s1에서 t1, s2에서 t2로 가는 교차하지 않고 꼭짓점을 공유하지 않는 두 경로가 존재하는지 판정한다.
난이도

보통10점 중 7점

유형
기하, 그래프, 최단 경로
정답자
아직 제출이 없습니다

문제

리자브(Lizarb) 축구 국가대표팀은 다가오는 월드컵의 강력한 우승 후보 중 하나다. 이들의 가장 큰 장점은 정교한 드리블과 패스 능력으로, 어떤 선수든 거리에 상관없이 경기장 위의 다른 어떤 선수에게도 공을 곧바로 패스할 수 있다. 주장 오이쿨(Oicul)은 두 개의 공 게임이라는 훈련이 이 능력을 크게 키워 준다고 주장한다.

두 개의 공 게임에서는 n≥4n \ge 4명의 선수가 경기장에 서 있으며 게임 동안 절대 움직이지 않는다. 이 중 네 명이 특별하다. 두 명은 출발 선수 s1s_1, s2s_2이고, 나머지 두 명은 도착 선수 t1t_1, t2t_2이다. 게임을 시작할 때 s1s_1은 흰 공을, s2s_2는 검은 공을 가지고 있다.

각 공은 선수에서 선수로 이동한다. 한 번의 패스는 두 선수를 잇는 하나의 직선 선분이다. 목표는 흰 공이 t1t_1에게, 검은 공이 t2t_2에게 도달하도록 만드는 것이다.

충돌을 피하기 위해 게임에는 두 가지 규칙이 있다.

  • 두 공의 이동 경로(선분)는 서로 교차해서는 안 된다.
  • 어떤 선수도 공을 두 번 이상 만질 수 없다. 출발 선수와 도착 선수도 마찬가지다.

선수 배치에 따라 두 개의 공 게임이 가능할 수도, 불가능할 수도 있다. 주어진 배치에 대해 게임이 가능한지 판별하는 프로그램을 작성하라.

입력

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

각 테스트 케이스는 선수의 수 nn (4≤n≤1000004 \le n \le 100000)이 적힌 줄로 시작하고, 이어서 각 선수의 좌표가 한 줄에 하나씩 nn줄에 걸쳐 주어진다. 모든 좌표는 서로 다르며, 어떤 세 선수도 한 직선 위에 있지 않다(세 점이 일직선 위에 놓이지 않는다).

좌표는 정해진 역할 순서로 주어진다. 첫 번째는 s1s_1, 두 번째는 t1t_1, 세 번째는 s2s_2, 네 번째는 t2t_2이며, 나머지 각 줄은 다른 선수의 좌표이다.

출력

각 테스트 케이스마다, 해당 배치에서 두 개의 공 게임이 가능하면 POSSIBLE을, 그렇지 않으면 IMPOSSIBLE을 한 줄에 출력한다.

예제4

  1. 예제 1

    입력
    2
    5
    2.01 0.02
    1.04 3.02
    0.01 0.99
    4.1 3.2
    2.1 2.01
    5
    2.01 0.02
    1.04 3.02
    0.01 0.99
    2.1 2.01
    4.1 3.2
    
    예상 출력
    IMPOSSIBLE
    POSSIBLE
    
  2. 예제 2

    입력
    1
    4
    0 0
    4 4
    4 0
    0 4
    
    예상 출력
    IMPOSSIBLE
    
  3. 예제 3

    입력
    1
    4
    0 0
    4 0
    4 4
    0 4
    
    예상 출력
    POSSIBLE
    
  4. 예제 4

    입력
    1
    4
    0 0
    10 0
    5 9
    5 3
    
    예상 출력
    POSSIBLE