아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Near 2

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

요약
나무 점 n개와 사과 점 m개가 주어질 때, 각 사과에서 가장 가까운 나무까지의 맨해튼 거리 중 최솟값을 구한다.
난이도

어려움10점 중 8점

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

문제

폴란드 속담 중에 "사과는 항상 사과나무 근처에 떨어진다"라는 말이 있습니다. 이 속담이 실제로 맞는지 실험으로 확인하려고 합니다.

사과나무와 사과의 위치는 평면 위의 점으로 나타냅니다. 두 점 사이의 거리는 맨해튼 거리로 정의합니다.

d((x1,y1),(x2,y2))=∣x1−x2∣+∣y1−y2∣d((x_1, y_1), (x_2, y_2)) = |x_1 - x_2| + |y_1 - y_2|

모든 사과는 자기와 가장 가까운 사과나무에서 떨어졌다고 가정합니다.

다음을 수행하는 프로그램을 작성하세요.

  • 표준 입력에서 사과나무와 사과의 위치를 읽는다.
  • 사과와 그 사과가 떨어진 사과나무 사이의 가장 작은 거리를 구한다.
  • 그 거리를 표준 출력에 출력한다.

(이 속담에 해당하는 영어 표현으로는 "Like father, like son", "Like mother, like daughter" 등이 있습니다.)

입력

첫째 줄에 사과나무의 수 nn과 사과의 수 mm이 공백 하나로 구분되어 주어집니다 (1≤n,m≤100 0001 \le n, m \le 100\,000).

둘째 줄에 사과나무의 좌표를 나타내는 2n2n개의 정수 x1 y1 x2 y2 … xn ynx_1\ y_1\ x_2\ y_2\ \dots\ x_n\ y_n이 공백으로 구분되어 주어집니다. 각 좌표는 [0,108][0, 10^8] 범위의 정수입니다.

셋째 줄에 사과의 좌표를 나타내는 2m2m개의 정수 x1′ y1′ x2′ y2′ … xm′ ym′x'_1\ y'_1\ x'_2\ y'_2\ \dots\ x'_m\ y'_m이 공백으로 구분되어 주어집니다. 각 좌표는 [0,108][0, 10^8] 범위의 정수입니다.

사과나무와 사과는 모두 평면 위의 점으로 취급하며, 여러 사과나무나 여러 사과가 같은 점에 있을 수 있습니다.

출력

사과와 그 사과가 떨어진 사과나무 사이의 가장 작은 거리를 정수 하나로 출력합니다.

예제3

  1. 예제 1

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

    입력
    1 1
    0 0
    5 3
    
    예상 출력
    8
    
  3. 예제 3

    입력
    2 2
    0 0 10 10
    10 10 5 5
    
    예상 출력
    0