커널

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

농부 Will은 농장에 쓸 로봇 관리 시스템을 사려고 한다. 이 시스템은 농장 안에서 자율 로봇 여러 대를 움직여 필요한 정보를 모은다. 로봇을 제어하려고 시스템은 농장의 고정된 위치에 비컨이라고 부르는 서버를 둔다. 하루 일이 끝나면 로봇은 모두 비컨으로 돌아와 다음 날을 위한 상태 점검을 받아야 한다. 그래서 비컨은 로봇에게 특별한 신호를 계속 보낸다. 로봇은 이 신호로 비컨의 위치를 곧바로 알아내고, 비컨을 향해 쉬지 않고 움직여 비컨에 닿으려 한다.

더 정확히 말하면, 농장은 단순 직각다각형 PP로 나타낸다. 경계를 따라가면 가로 변과 세로 변이 번갈아 나오고, 꼭짓점은 모두 서로 다르며, 두 변은 공통 끝점이 아닌 곳에서는 만나지 않는다. 로봇도 비컨도 PP의 점, 즉 PP의 경계 위나 내부의 점으로 나타낸다. PP 안의 로봇 pp는 비컨 bb까지의 유클리드 거리를 줄이려고 다음과 같이 탐욕적으로 움직인다. pppp에서 bb로 향하는 반직선을 따라 bb에 닿거나 PP의 경계에 부딪힐 때까지 나아간다. 경계에 부딪히면 경계를 따라 미끄러지면서 bb까지의 거리를 더 줄일 수도 있고, 어느 방향으로도 거리를 줄이지 못할 수도 있다. PP 안의 점 ppbb까지의 유클리드 거리를 계속 엄격히 줄이면서 결국 bb에 닿으면, ppPP에서 bb에 끌린다고 하고, 같은 뜻으로 bbpp를 끌어당긴다고 한다.

아래 그림 1을 보자. 왼쪽 그림에서 점 pp는 굵은 선분으로 그린 경로를 따라 움직여 마침내 비컨 bb에 닿는다. 오른쪽 그림에서 점은 xx까지는 갈 수 있지만, xx에서는 bb까지의 유클리드 거리를 줄이는 방향이 없어 더 움직이지 못한다.

그림 1. 비컨이 점을 끌어당기는 경우와 끌어당기지 못하는 경우.

PP의 커널은 PP의 모든 점을 끌어당기는 PP의 점을 모두 모은 집합이다. 비컨을 PP의 커널 안 어디에 놓아도 PP의 모든 점이 그 비컨에 끌리므로, 비컨 하나로 로봇을 모두 부를 수 있다. 그러나 커널이 없는 다각형도 있다.

꼭짓점이 nn개인 단순 직각다각형 PP가 주어질 때, PP의 커널이 존재하는지 판정하는 프로그램을 작성하라.

입력

프로그램은 표준 입력에서 읽는다. 입력은 TT개의 테스트 케이스로 이루어진다. 첫 줄에 테스트 케이스의 개수 TT가 주어진다. 각 테스트 케이스의 첫 줄에는 단순 직각다각형 PP의 꼭짓점 개수 nn (4n100004 \le n \le 10000)이 주어진다. 이어지는 nn개 줄에는 PP의 꼭짓점 좌표가 반시계 방향 순서로 주어진다. 각 줄에는 꼭짓점의 xx좌표와 yy좌표가 공백 하나로 구분되어 주어지고, 두 값 모두 109-10^9 이상 10910^9 이하의 정수이다. 꼭짓점은 모두 서로 다르다.

출력

프로그램은 표준 출력에 쓴다. 각 테스트 케이스마다 정확히 한 줄을 출력한다. 그 테스트 케이스의 다각형에 커널이 있으면 YES를, 없으면 NO를 출력한다.