#P12503. 「ROI 2025 Day1」索契游乐园

「ROI 2025 Day1」索契游乐园

题目背景

由于评测机性能差异,本题时限增加了 1 秒。

题目描述

译自 ROI 2025 Day1 T3. Сочи Парк

索契游乐园新推出了一项刺激的游乐项目!沿着一条直线,摆放了 nn 个目标,每个目标的坐标为 xix_i (1in)(1 \le i \le n)。你的任务是以任意顺序击中所有这些目标。击中目标需要使用小球,假设你站在坐标 xx 的位置,想击中位于 xix_i 的目标,你需要消耗 (xxi)2(x - x_i)^2 卡路里的能量。

你从坐标 x0x_0 进入游乐项目。小球的补给点分布在入口处以及间隔 dd 的位置上,即坐标为 x0+kdx_0 + kd 的点(kk 为任意整数)。根据游乐项目的规则,你不能携带小球,只能从这些补给点投掷。

在比赛间隙,有 mm 位奥林匹克选手将体验这个项目。每位选手的体力不同,第 jj 位选手移动距离 dd 需要消耗 tjt_j 卡路里的能量。

你的任务是计算每位选手完成所有目标所需的最少能量。

输入格式

第一行包含一个整数 nn (1n3105)(1 \leq n \leq 3 \cdot 10^{5}),表示游乐项目中的目标数量。

第二行包含 nn 个整数 x1,x2,,xnx_{1}, x_{2}, \ldots, x_{n} (0xi109)(0 \leq x_{i} \leq 10^{9}),表示目标的坐标。

第三行包含两个整数 x0x_{0}dd $(0 \leq x_{0} \leq 10^{9}, 1 \leq d \leq 2 \cdot 10^{6})$,分别表示入口坐标和小球补给点之间的间距。

第四行包含一个整数 mm (1m6105)(1 \leq m \leq 6 \cdot 10^{5}),表示奥林匹克选手的数量。

接下来的 mm 行,每行包含一个整数 tjt_j (0tj108)(0 \leq t_j \leq 10^{8}),表示第 jj 位选手移动距离 dd 所需的能量。

输出格式

对每位选手,输出一个整数,表示他完成所有目标所需的最少能量。

在给定限制下,答案不会超过 64 位有符号整数的最大值。但中间计算可能需要使用 C++ 的 __int128 类型(仅 GNU C++ 编译器支持)、Java 的 BigInteger 或 Python 的 int 类型。

3
4 0 7
2 3
7
0
1
2
3
4
23
25
3
7
10
12
13
32
33
4
30 239 57 179
0 7
5
1
10
15
100
100000
49
355
525
3378
93311
4
100 2 101 666
9 10
5
777
1
2
15
10
49597
91
159
1043
703

提示

样例 1 解释

在第一个样例中,对于第 22 位选手(t2=1t_2 = 1),最优的击中目标策略如下:

  1. x0=2x_0 = 2 移动到 x0d=1x_0 - d = -1,消耗 t2=1t_2 = 1 卡路里。注意,选手坐标可以为负数。
  2. 击中位于 x2=0x_2 = 0 的目标,消耗 (10)2=1(-1 - 0)^2 = 1 卡路里。
  3. 移动到 1+2d=5-1 + 2d = 5,消耗 2t2=22t_2 = 2 卡路里。
  4. 击中位于 x1=4x_1 = 4 的目标,消耗 (54)2=1(5 - 4)^2 = 1 卡路里。
  5. 移动到 5+d=85 + d = 8,消耗 t2=1t_2 = 1 卡路里。
  6. 击中位于 x3=7x_3 = 7 的目标,消耗 (87)2=1(8 - 7)^2 = 1 卡路里。

总能量消耗为 1+1+2+1+1+1=71 + 1 + 2 + 1 + 1 + 1 = 7 卡路里。可以证明这是最小能量消耗。

对于第 66 位选手(t6=23t_6 = 23),最优策略如下:

  1. 击中位于 x2=0x_2 = 0 的目标,消耗 (20)2=4(2 - 0)^2 = 4 卡路里。
  2. 移动到 2+d=52 + d = 5,消耗 t6=23t_6 = 23 卡路里。
  3. 击中位于 x3=7x_3 = 7 的目标,消耗 (75)2=4(7 - 5)^2 = 4 卡路里。
  4. 击中位于 x1=4x_1 = 4 的目标,消耗 (54)2=1(5 - 4)^2 = 1 卡路里。

总能量消耗为 4+23+4+1=324 + 23 + 4 + 1 = 32 卡路里。可以证明这是最小能量消耗。

数据范围

详细子任务附加限制及分值如下表所示。其中子任务 00 是样例。

子任务 分值 附加限制
11 99 m=1m = 1t1=0t_{1} = 0
22 77 n=1n = 1m10000m \leq 10\,000
33 88 n=2n = 2m10000m \leq 10\,000x1x0x2x_{1} \leq x_{0} \leq x_{2}
44 33 n50n \leq 50x0=0x_{0} = 0m50m \leq 50d50d \leq 50xi50x_{i} \leq 50
55 22 n50n \leq 50x050x_{0} \leq 50m50m \leq 50d50d \leq 50xi50x_{i} \leq 50
66 44 x0=0x_{0} = 0m10m \leq 10xi106x_{i} \leq 10^{6}
77 22 x0106x_{0} \leq 10^{6}m10m \leq 10xi106x_{i} \leq 10^{6}
88 66 x0=0x_{0} = 0m10000m \leq 10\,000xi106x_{i} \leq 10^{6}
99 1010 x0106x_{0} \leq 10^{6}m10000m \leq 10\,000xi106x_{i} \leq 10^{6}
1010 77 x0106x_{0} \leq 10^{6}m105m \leq 10^{5}xi106x_{i} \leq 10^{6}
1111 22 m10m \leq 10
1212 x0=0x_{0} = 0m105m \leq 10^{5}d=1d = 1
1313 55 m105m \leq 10^{5}d=1d = 1
1414 88 x0=0x_{0} = 0m105m \leq 10^{5}
1515 22 m105m \leq 10^{5}
1616 11 m2105m \leq 2 \cdot 10^{5}
1717 33 m3105m \leq 3 \cdot 10^{5}
1818 99 无附加限制