반평면 땅따먹기 2
시간 제한4초메모리 제한512 MB
직선의 집합에 추가와 삭제가 번갈아 일어나는 가운데 주어진 x에서 최댓값을 온라인으로 답한다.
문제
정수 쌍 를 담는 집합 가 있다. 처음에 는 공집합이다. 아래 세 종류의 연산이 개 주어진다.
- 정수 쌍 를 에 추가한다.
- 번째 연산에서 추가한 정수 쌍을 에서 제거한다.
- 정수 가 주어지면, 에 들어 있는 모든 정수 쌍 중 의 최댓값을 출력한다.
연산을 주어진 순서대로 처리하는 프로그램을 작성한다.
입력
첫째 줄에 연산의 개수 이 주어진다. ()
둘째 줄부터 개의 줄에 연산이 한 줄에 하나씩 주어진다. 각 줄은 연산의 종류를 나타내는 정수 Type으로 시작하고, Type은 1, 2, 3 중 하나이다.
Type이 1이면 정수 와 가 이어서 주어진다. ()
Type이 2이면 정수 가 이어서 주어진다. () 는 이 연산의 번호보다 작고, 번째 연산은 1번 연산이며, 그 연산으로 추가한 정수 쌍은 아직 제거되지 않았다.
Type이 3이면 정수 가 이어서 주어진다. ()
출력
3번 연산마다 답을 한 줄에 하나씩 순서대로 출력한다. 그 시점에 가 공집합이면 따옴표 없이 EMPTY를 출력한다.