매우 잘 보이는 점 쌍

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

요약
점들을 하나씩 추가하면서, 매번 두 점의 경계 사각형 안에 다른 점이 없는 매우 잘 보이는 점 쌍의 개수를 구합니다.
난이도

어려움10점 중 8점

유형
분할 정복, 기하, 정렬, 이분 탐색
정답자
아직 제출이 없습니다

문제

처음에는 좌표평면에 점이 없다. 점 N개가 주어진 순서대로 하나씩 추가된다. 모든 점의 x좌표는 서로 다르고, 모든 점의 y좌표도 서로 다르며, 좌표는 모두 정수이다.

서로 다른 두 점 A와 B를 고르면, 두 점을 한 대각선의 양 끝점으로 하고 변이 좌표축과 평행한 직사각형 R(A,B)가 하나로 정해진다. 현재까지 추가된 다른 점이 R(A,B)의 내부에 없으면 A와 B는 매우 잘 보이는 쌍이다. 쌍 (A,B)와 (B,A)는 같은 쌍으로 세며 한 번만 센다.

각 점을 추가한 직후, 현재까지 추가된 점들 사이의 매우 잘 보이는 쌍의 개수를 구하라.

입력

첫 줄에 점의 개수 N이 주어진다. (2 <= N <= 5000)

다음 N개의 줄에는 각 점을 추가할 순서대로 두 정수 X, Y가 주어진다. X와 Y는 점의 좌표이며 0 <= X, Y <= 1000000이다. 어떤 두 점도 x좌표가 같지 않고, 어떤 두 점도 y좌표가 같지 않다.

출력

총 N줄을 출력한다. k번째 줄에는 k번째 점까지 추가한 뒤 현재 매우 잘 보이는 점 쌍의 개수를 출력한다.

예제3

  1. 예제 1

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

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

    입력
    7
    1 5
    2 7
    3 8
    5 1
    6 2
    7 3
    4 4
    
    예상 출력
    0
    1
    2
    5
    9
    13
    10