가장 가까운 점까지의 거리

N개의 점 각각에 대해 다른 점까지의 맨해튼 거리 중 최솟값을 출력한다.

어려움8기하분할 정복정렬아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

두 점 A(x1,y1)A(x_1, y_1)B(x2,y2)B(x_2, y_2) 사이의 거리 D(A,B)D(A, B)를 다음과 같이 정의한다.

D(A,B)=x1x2+y1y2D(A, B) = |x_1 - x_2| + |y_1 - y_2|

NNA1,A2,,ANA_1, A_2, \dots, A_N이 주어진다. 각각의 점 AiA_i마다 자신을 제외한 나머지 점 가운데 가장 가까운 점 AjA_j를 찾아 그 거리 D(Ai,Aj)D(A_i, A_j)를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 점의 개수 NN이 주어진다. (2N2×1052 \le N \le 2 \times 10^5)

둘째 줄부터 NN개 줄에 걸쳐 점 AiA_i의 좌표 xxyy가 공백을 사이에 두고 주어진다. (107x,y107-10^7 \le x, y \le 10^7) 좌표는 모두 정수이다. 좌표가 완전히 같은 점이 둘 이상 들어오기도 하며, 그런 두 점 사이의 거리는 00이다.

출력

A1A_1부터 ANA_N까지 입력에 주어진 순서대로, 각 점에서 가장 가까운 점까지의 거리를 한 줄에 하나씩 출력한다.