만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

소주

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

요약
첫 번째 점 집합이 두 번째 점 집합보다 모두 서쪽에 있을 때 두 집합에서 하나씩 고른 점 사이의 맨해튼 거리의 최솟값을 구합니다.
난이도

보통10점 중 7점

유형
기하, 정렬
정답자
아직 제출이 없습니다

문제

국내 소주 시장은 IC와 PC라는 두 경쟁 회사가 나누어 가지고 있다. 소주는 한국 음식과 잘 어울리는 대표적인 증류주이다. 두 회사는 지점 위치에 관한 협약을 맺고 있는데, IC의 모든 지점은 PC의 어떤 지점보다도 서쪽에 있어야 한다. 즉 IC 지점들의 xx좌표는 모두 PC 지점들의 xx좌표보다 작다.

매달 초 두 회사는 이 협약이 잘 지켜지고 있는지 확인하기 위해, 서로 다른 회사에 속한 두 지점 사이의 가장 가까운 거리를 구하려고 한다. 두 점 (x1,y1)(x_1, y_1)과 (x2,y2)(x_2, y_2) 사이의 거리는 ∣x1−x2∣+∣y1−y2∣|x_1 - x_2| + |y_1 - y_2|로 정의된다.

IC와 PC 지점 배치 예시

그림 1. 파란 원은 IC 지점, 빨간 사각형은 PC 지점을 나타낸다. 두 집합 사이에서 가장 가까운 쌍의 거리는 5이다.

IC와 PC의 지점을 각각 나타내는 두 점 집합 II와 PP가 주어진다. II의 모든 점은 PP의 어떤 점보다도 xx좌표가 작다. i∈Ii \in I, p∈Pp \in P인 모든 쌍 (i,p)(i, p)에 대한 거리의 최솟값을 구하는 프로그램을 작성하라.

입력

입력은 표준 입력으로 주어진다. 첫 줄에 테스트 케이스의 개수 TT가 주어진다. 각 테스트 케이스의 첫 줄에는 집합 II에 속한 점의 개수 nn이 주어진다 (1≤n≤1000001 \le n \le 100000). 이어지는 nn개의 줄에는 각 줄마다 II에 속한 한 점의 xx좌표와 yy좌표가 주어진다. 그다음 줄에는 집합 PP에 속한 점의 개수 mm이 주어진다 (1≤m≤1000001 \le m \le 100000). 이어지는 mm개의 줄에는 각 줄마다 PP에 속한 한 점의 xx좌표와 yy좌표가 주어진다. 모든 좌표는 −106-10^6 이상 10610^6 이하의 정수이다. II의 모든 점은 PP의 어떤 점보다도 xx좌표가 작다는 점에 유의하라.

출력

출력은 표준 출력으로 한다. 각 테스트 케이스마다 정확히 한 줄을 출력한다. 그 줄에는 II와 PP에서 각각 하나씩 고른 가장 가까운 점 쌍의 거리를 정수로 출력한다.

예제3

  1. 예제 1

    입력
    2
    10
    -16 -4
    -1 -3
    -9 -1
    -4 -10
    -11 -6
    -20 4
    -13 6
    -3 -10
    -19 -1
    -12 -4
    10
    8 2
    10 3
    10 10
    20 -3
    20 3
    16 2
    3 -5
    14 -10
    8 -2
    14 0
    10
    -3 39
    -2 -28
    -1 20
    -3 11
    -3 45
    -2 -44
    -1 -47
    -5 -35
    -5 -19
    -5 -45
    10
    27 5
    28 0
    28 5
    21 5
    2 3
    13 -1
    16 -2
    20 -2
    33 -3
    27 1
    
    예상 출력
    6
    13
    
  2. 예제 2

    입력
    1
    1
    -5 3
    1
    4 3
    
    예상 출력
    9
    
  3. 예제 3

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