#abc119d. [abc119_d]Lazy Faith

[abc119_d]Lazy Faith

题目描述

沿着一条东西方向的道路上,有 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 个查询的答案。

示例输入 1

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

示例输出 1

350
1400
301
399

这里有两个神社和三个寺庙。神社位于距离道路西端 100,600100, 600 米的位置,而寺庙位于距离道路西端 400,900,1000400, 900, 1000 米的位置。

  • 查询 11:如果我们从距离道路西端 150150 米的位置出发,最佳移动方式是先向西走 5050 米访问一个神社,然后向东走 300300 米访问一个寺庙。
  • 查询 22:如果我们从距离道路西端 20002000 米的位置出发,最佳移动方式是先向西走 10001000 米访问一个寺庙,然后向西走 400400 米访问一个神社。在途中我们会经过另一个寺庙,但没关系。
  • 查询 33:如果我们从距离道路西端 899899 米的位置出发,最佳移动方式是先向东走 11 米访问一个寺庙,然后向西走 300300 米访问一个神社。
  • 查询 44:如果我们从距离道路西端 799799 米的位置出发,最佳移动方式是先向西走 199199 米访问一个神社,然后向西走 200200 米访问一个寺庙。

示例输入 2

1 1 3
1
10000000000
2
9999999999
5000000000

示例输出 2

10000000000
10000000000
14999999998

这条道路很长,我们可能需要行进的距离无法适应 3232 位整数。