병사 (Large)
시간 제한5초메모리 제한512 MB
두 선수가 번갈아 병사를 고르는데, 새로 고른 병사는 이전에 고른 모든 병사보다 공격력이 높거나 방어력이 높아야 한다. 선공이 더 많은 병사를 가져갈 수 있는지 판정한다.
문제
앨리스 장군과 밥 장군이 전쟁 게임을 한다. 게임에는 병사 명이 있고, 병사마다 공격력과 방어력이라는 두 능력치가 있다.
게임을 시작하기 전에 두 장군은 앨리스 장군부터 번갈아 가며 병사를 고른다. 자기 차례에는 병사 한 명을 고르는데, 그 병사의 공격력이 지금까지 고른 모든 병사의 공격력보다 크거나, 방어력이 지금까지 고른 모든 병사의 방어력보다 커야 한다. 정확히 말하면, 번째 병사()의 공격력과 방어력을 , 라 하고 지금까지 고른 병사의 집합을 라 할 때, 다음 두 조건 중 하나 이상이 성립해야 병사 를 고를 수 있다.
- 에 속한 모든 에 대해
- 에 속한 모든 에 대해
더 이상 고를 수 있는 병사가 없으면 고르기가 끝나고 게임이 시작된다.
앨리스 장군은 밥 장군보다 병사를 많이 고르고 싶어 하고, 밥 장군은 이를 막으려 한다. 두 사람이 모두 이 목표를 위해 최선을 다할 때, 앨리스 장군이 뜻을 이룰 수 있는지 구하시오.
입력
첫째 줄에 테스트 케이스의 수 가 주어진다.
각 테스트 케이스의 첫째 줄에는 병사의 수를 나타내는 양의 정수 이 주어진다. 다음 개의 줄 중 번째 줄에는 번째 병사의 공격력 와 방어력 가 공백으로 구분되어 주어진다.
제한
출력
각 테스트 케이스마다 Case #x: y 형식으로 한 줄을 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 밥 장군이 최선을 다해 막더라도 앨리스 장군이 밥 장군보다 병사를 많이 고를 수 있으면 YES, 그렇지 않으면 NO이다.