D - Lazy Faith Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 400400

問題文

東西方向に伸びる道路に沿って AA 社の神社と BB 軒の寺が建っています。 西から ii 社目の神社は道路の西端から sis_i メートルの地点に、西から ii 軒目の寺は道路の西端から tit_i メートルの地点にあります。

以下の QQ 個の問いに答えてください。

ii (1iQ1 \leq i \leq Q): 道路の西端から xix_i メートルの地点から出発して道路上を自由に移動するとき、神社一社と寺一軒を訪れるのに必要な最小の移動距離は何メートルか? (必要数を超えた数の寺社を通過してもよい。)

制約

  • 1A,B1051 \leq A, B \leq 10^5
  • 1Q1051 \leq Q \leq 10^5
  • 1s1<s2<...<sA10101 \leq s_1 < s_2 < ... < s_A \leq 10^{10}
  • 1t1<t2<...<tB10101 \leq t_1 < t_2 < ... < t_B \leq 10^{10}
  • 1xi10101 \leq x_i \leq 10^{10}
  • s1,...,sA,t1,...,tB,x1,...,xQs_1, ..., s_A, t_1, ..., t_B, x_1, ..., x_Q はすべて異なる。
  • 入力される値はすべて整数である。

入力

入力は以下の形式で標準入力から与えられる。

AA BB QQ
s1s_1
::
sAs_A
t1t_1
::
tBt_B
x1x_1
::
xQx_Q

出力

QQ 行出力せよ。ii 行目に問 ii への答えを出力すること。


入力例 1Copy

Copy
2 3 4
100
600
400
900
1000
150
2000
899
799

出力例 1Copy

Copy
350
1400
301
399

22 社の神社と 33 軒の寺があり、神社は道路の西端から 100,600100, 600 メートルの地点に、寺は道路の西端から 400,900,1000400, 900, 1000 メートルの地点にあります。

  • 11: 道路の西端から 150150 メートルの地点から出発する場合、まず西に 5050 メートル進んで神社を訪れ、次に東に 300300 メートル進んで寺を訪れるのが最適です。
  • 22: 道路の西端から 20002000 メートルの地点から出発する場合、まず西に 10001000 メートル進んで寺を訪れ、次に西に 400400 メートル進んで神社を訪れるのが最適です。途中で寺をもう一軒通過しますが、構いません。
  • 33: 道路の西端から 899899 メートルの地点から出発する場合、まず東に 11 メートル進んで寺を訪れ、次に西に 300300 メートル進んで神社を訪れるのが最適です。
  • 44: 道路の西端から 799799 メートルの地点から出発する場合、まず西に 199199 メートル進んで神社を訪れ、次に西に 200200 メートル進んで寺を訪れるのが最適です。

入力例 2Copy

Copy
1 1 3
1
10000000000
2
9999999999
5000000000

出力例 2Copy

Copy
10000000000
10000000000
14999999998

道路は長く、3232 ビット整数に収まらない距離を移動する必要があるかもしれません。

Score : 400400 points

Problem Statement

Along a road running in an east-west direction, there are AA shrines and BB temples. The ii-th shrine from the west is located at a distance of sis_i meters from the west end of the road, and the ii-th temple from the west is located at a distance of tit_i meters from the west end of the road.

Answer the following QQ queries:

  • Query ii (1iQ1 \leq i \leq Q): If we start from a point at a distance of xix_i meters from the west end of the road and freely travel along the road, what is the minimum distance that needs to be traveled in order to visit one shrine and one temple? (It is allowed to pass by more shrines and temples than required.)

Constraints

  • 1A,B1051 \leq A, B \leq 10^5
  • 1Q1051 \leq Q \leq 10^5
  • 1s1<s2<...<sA10101 \leq s_1 < s_2 < ... < s_A \leq 10^{10}
  • 1t1<t2<...<tB10101 \leq t_1 < t_2 < ... < t_B \leq 10^{10}
  • 1xi10101 \leq x_i \leq 10^{10}
  • s1,...,sA,t1,...,tB,x1,...,xQs_1, ..., s_A, t_1, ..., t_B, x_1, ..., x_Q are all different.
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

AA BB QQ
s1s_1
::
sAs_A
t1t_1
::
tBt_B
x1x_1
::
xQx_Q

Output

Print QQ lines. The ii-th line should contain the answer to the ii-th query.


Sample Input 1Copy

Copy
2 3 4
100
600
400
900
1000
150
2000
899
799

Sample Output 1Copy

Copy
350
1400
301
399

There are two shrines and three temples. The shrines are located at distances of 100,600100, 600 meters from the west end of the road, and the temples are located at distances of 400,900,1000400, 900, 1000 meters from the west end of the road.

  • Query 11: If we start from a point at a distance of 150150 meters from the west end of the road, the optimal move is first to walk 5050 meters west to visit a shrine, then to walk 300300 meters east to visit a temple.
  • Query 22: If we start from a point at a distance of 20002000 meters from the west end of the road, the optimal move is first to walk 10001000 meters west to visit a temple, then to walk 400400 meters west to visit a shrine. We will pass by another temple on the way, but it is fine.
  • Query 33: If we start from a point at a distance of 899899 meters from the west end of the road, the optimal move is first to walk 11 meter east to visit a temple, then to walk 300300 meters west to visit a shrine.
  • Query 44: If we start from a point at a distance of 799799 meters from the west end of the road, the optimal move is first to walk 199199 meters west to visit a shrine, then to walk 200200 meters west to visit a temple.

Sample Input 2Copy

Copy
1 1 3
1
10000000000
2
9999999999
5000000000

Sample Output 2Copy

Copy
10000000000
10000000000
14999999998

The road is quite long, and we may need to travel a distance that does not fit into a 3232-bit integer.



2025-03-29 (Sat)
16:22:47 +00:00