해결한 사람
0
명
정답률
0.00
%
시간 제한
4000
ms
메모리 제한
245
MB
Anton은 체스를 두는 것을 좋아한다. 또한 프로그래밍하는 것도 좋아한다. 그가 체스 수업과 프로그래밍 수업에 참석하기로 한 것은 당연한 일이다.
Anton에게는 체스 수업에 참석할 수 있는 n개의 선택지가 있으며, i-th 선택지는 시간 구간 (l1, i, r1, i)으로 주어진다. 또한 프로그래밍 수업에 참석할 수 있는 m개의 선택지가 있으며, i-th 선택지는 시간 구간 (l2, i, r2, i)으로 주어진다.
Anton은 체스 수업에 참석할 수 있는 n개의 시간 구간 중 정확히 하나와 프로그래밍 수업에 참석할 수 있는 m개의 시간 구간 중 정확히 하나를 선택해야 한다. 그는 수업 사이에 휴식을 취하고 싶으므로, 가능한 모든 구간 쌍 중 두 구간 사이의 거리가 최대인 것을 선택하려 한다.
구간 (l1, r1)과 (l2, r2) 사이의 거리는 첫 번째 구간의 한 점과 두 번째 구간의 한 점 사이에서 가능한 최소 거리이다. 즉, l1 ≤ i ≤ r1이고 l2 ≤ j ≤ r2일 때 가능한 |i - j|의 최솟값이다. 특히 두 구간이 겹치면 두 구간 사이의 거리는 0이다.
Anton은 최선의 경우 수업 사이의 휴식 시간이 얼마나 될지 알고 싶어 한다. Help Anton 이 수를 구하라!
입력의 첫 번째 줄에는 Anton이 체스 수업에 참석할 수 있는 시간 구간의 수를 나타내는 하나의 정수 n (1 ≤ n ≤ 200 000)가 주어진다.
이어지는 입력의 n개 줄에는 각각 Anton이 체스 수업에 참석할 수 있는 시간 구간의 i-th 선택지를 나타내는 두 정수 l1, i와 r1, i (1 ≤ l1, i ≤ r1, i ≤ 109)가 주어진다.
그다음 줄에는 Anton이 프로그래밍 수업에 참석할 수 있는 시간 구간의 수를 나타내는 하나의 정수 m (1 ≤ m ≤ 200 000)가 주어진다.
이어지는 입력의 m개 줄에는 각각 Anton이 프로그래밍 수업에 참석할 수 있는 시간 구간의 i-th 선택지를 나타내는 두 정수 l2, i와 r2, i (1 ≤ l2, i ≤ r2, i ≤ 109)가 주어진다.
시간 구간 사이에서 가능한 최대 거리를 나타내는 정수 하나를 출력한다.
3
1 5
2 6
2 3
2
2 4
6 8
3
3
1 5
2 6
3 7
2
2 4
1 4
0
첫 번째 예제에서 Anton은 구간 (2, 3)에 체스 수업을 듣고 구간 (6, 8)에 프로그래밍 수업을 들을 수 있다. 이 경우 두 구간 사이의 거리가 3임을 쉽게 알 수 있다.
두 번째 예제에서는 어떤 구간 쌍을 선택하더라도 두 구간이 겹친다. 따라서 답은 0이다.