#P9342. [JOIST 2023] 比太郎之旅 / Bitaro's Travel

[JOIST 2023] 比太郎之旅 / Bitaro's Travel

题目描述

在 JOI 市有一条很长的道路,可以看作是实数轴。道路上的一个位置由一个实数坐标表示。在 JOI 市,沿着这条道路有 NN 个观光景点,按坐标递增的顺序编号为 11NN。第 ii 个观光景点 (1iN)(1 \le i \le N) 的坐标为 XiX_i

Bitaro 将参观 JOI 市的所有观光景点。由于“贪婪”是他生活的口号,他将重复以下步骤,直到参观完所有的观光景点。

  • xx 为 Bitaro 当前的坐标。在他尚未参观的观光景点中,选择一个景点 ii,使得从 Bitaro 当前坐标到该景点的距离 xXi|x - X_i| 最小。然后 Bitaro 移动到景点 ii 的位置,并参观它。如果有多个这样的观光景点,他会移动到坐标较小的那个景点。这里,t|t|tt 的绝对值。

然而,由于多年的经验,Bitaro 知道如果他通过重复上述步骤来移动,总旅行距离可能会比他预期的要长。由于总旅行距离会根据起始坐标的不同而变化,他想知道如果从 QQ 个起始坐标候选 S1,S2,,SQS_1, S_2, \dots, S_Q 中的每一个开始,直到参观完所有观光景点的总旅行距离。

为了帮助 Bitaro,编写一个程序,计算如果他从每个起始坐标候选开始的总旅行距离,给定 JOI 市的信息和起始坐标候选。

输入格式

从标准输入读取以下数据。

NN

X1 X2XNX_1\ X_2\cdots X_N

QQ

S1S_1

S2S_2

\vdots

SQS_Q

输出格式

向标准输出写入 QQ 行。输出的第 jj(1jQ)(1 \le j \le Q) 应包含如果 Bitaro 从坐标 SjS_j 开始的总旅行距离。

5
0 5 6 7 9
1
7

15
10
1 2 3 4 5 6 7 8 9 10
10
1
2
3
4
5
6
7
8
9
10

9
10
11
12
13
14
15
16
17
9

提示

【样例解释 #1】

如果 Bitaro 从坐标 77 开始,他将按如下方式参观所有观光景点。

  1. 他尚未参观的观光景点有 1,2,3,4,51, 2, 3, 4, 5,从 Bitaro 当前坐标到这些景点的距离分别为 7,2,1,0,27, 2, 1, 0, 2。由于观光景点 44 是离 Bitaro 最近的景点,他停留在坐标 77 并参观观光景点 44
  2. 他尚未参观的观光景点有 1,2,3,51, 2, 3, 5,从 Bitaro 当前坐标到这些景点的距离分别为 7,2,1,27, 2, 1, 2。由于观光景点 33 是离 Bitaro 最近的景点,他从坐标 77 移动到坐标 66 并参观观光景点 33
  3. 他尚未参观的观光景点有 1,2,51, 2, 5,从 Bitaro 当前坐标到这些景点的距离分别为 6,1,36, 1, 3。由于观光景点 22 是离 Bitaro 最近的景点,他从坐标 66 移动到坐标 55 并参观观光景点 22
  4. 他尚未参观的观光景点有 1,51, 5,从 Bitaro 当前坐标到这些景点的距离分别为 5,45, 4。由于观光景点 55 是离 Bitaro 最近的景点,他从坐标 55 移动到坐标 99 并参观观光景点 55
  5. 他尚未参观的观光景点有 11。由于观光景点 11 是离 Bitaro 最近的景点,他从坐标 99 移动到坐标 00 并参观观光景点 11

由于 Bitaro 的总旅行距离是 1515,输出 1515

该样例满足所有子任务的限制。

【样例解释 #2】

该样例满足子任务 3,43, 4 的限制。

【数据范围】

对于所有测试数据,满足 1N,Q2×1051 \le N, Q \le 2 \times 10^50Xi1090 \le X_i \le 10^9Xi<Xi+1X_i < X_{i+1}0Sj1090 \le S_j \le 10^9,保证所有输入均为整数。

子任务编号 分值 限制
11 55 Q=1,N2×103Q=1, N \le 2 \times 10^3
22 1010 Q=1Q=1
33 3030 Xi+1Xi100X_{i+1} - X_i \le 100
44 5555

题面翻译由 ChatGPT-4o 提供。