#ATagc022d. [AGC022D] Shopping

[AGC022D] Shopping

题目描述

Yui 很喜欢购物。Yui 住在 Yamaboshi 市,这个城市有铁路运行。Yamaboshi 市可以被建模为一条非常长的数轴,Yui 的家在坐标 00

Yamaboshi 市有 NN 个购物中心,分别位于坐标 x1, x2, ..., xNx_{1},\ x_{2},\ ...,\ x_{N}。铁路共有 N+2N+2 个车站,分别在坐标 00、坐标 LL 以及每个购物中心的位置各有一个车站。

在时刻 00,列车从坐标 00 的车站出发,向正方向行驶。列车以每秒 11 单位距离的恒定速度移动。在时刻 LL,列车到达终点站(即坐标 LL 的车站)。到达后,列车立即以相同速度反向行驶。在时刻 2L2L,列车回到坐标 00 的车站,并再次反向行驶。这个过程会无限循环。

每当列车到达 Yui 所在的车站时,Yui 可以立刻上下车。在时刻 00,Yui 在坐标 00 的车站。

Yui 想要去所有 NN 个购物中心购物,顺序不限,购物结束后还要回家。在坐标 xix_{i} 的购物中心购物需要 tit_{i} 秒。在某个购物中心开始购物后,必须在前往下一个购物中心之前完成该处的购物。 到达购物中心所在的车站后可以立刻开始购物,购物结束后可以立刻乘车。

Yui 想让购物所需的总时间最短。请帮她判断,最短需要多少秒才能完成所有购物并回家?

输入格式

输入从标准输入读取,格式如下:

NN LL x1x_{1} x2x_{2} ...... xNx_{N} t1t_{1} t2t_{2} ...... tNt_{N}

输出格式

输出 Yui 完成所有 NN 个购物中心购物并回家所需的最短时间(以秒为单位)。

样例 1

输入

2 10
5 8
10 4

输出

40

样例 2

输入

2 10
5 8
10 5

输出

60

样例 3

输入

5 100
10 19 28 47 68
200 200 200 200 200

输出

1200

样例 4

输入

8 1000000000
2018 123456 1719128 1929183 9129198 10100101 77777777 120182018
99999999 1000000000 1000000000 11291341 1 200 1 123812831

输出

14000000000

说明/提示

限制

  • 1N3000001 \leq N \leq 300000
  • 1L1091 \leq L \leq 10^{9}
  • 0<x1<x2<...<xN<L0 < x_{1} < x_{2} < ... < x_{N} < L
  • 1ti1091 \leq t_{i} \leq 10^{9}
  • 输入中的所有数值均为整数。

部分得分

  • 若能正确解决 1N30001 \leq N \leq 3000 的数据集,可获得 10001000 分。

样例解释 1

以下是 Yui 完成购物的一种行程示例:

  • 乘坐列车前往坐标 88 的车站。时刻 88 到达坐标 88
  • 在坐标 88 的购物中心购物。时刻 1212 完成购物。
  • 时刻 1212,列车到达坐标 88,乘坐反方向的列车。
  • 时刻 1515 到达坐标 55。时刻 2525 完成购物。
  • 时刻 2525,列车到达坐标 55,乘坐正方向的列车。
  • 时刻 3030 到达坐标 L=10L=10,列车立即反向行驶。
  • 时刻 4040 回到坐标 00,行程结束。

样例解释 4

请注意防止溢出。

由 ChatGPT 4.1 翻译