20057 - 切割冰山
时间限制 : 1 秒
内存限制 : 128 MB
南极的冰山下冰冻着许多奥秘。为了探究,跳蚤国王选定了一大片富含远古微生物的冰山样本,准备将其切割成小片以供研究。
冰山样本是一片面积巨大的矩形冰片。放置在地上时,可视为占据了平面直角坐标系的整个第一象限 [0, +\infty) \times [0, +\infty)。
为了切割冰片,跳蚤国王放置了 n+m 个激光发射器:
- 其中有 m 个竖直向上的激光发射器,第 i 个竖直向上的激光发射器位于 (i, 0),所发出的激光的强度为 10^{100};
- 其中有 n 个水平向右的激光发射器,第 i 个水平向右的激光发射器位于 (0, i),所发出的激光的强度为 l_i。
这里的激光发射器都是为切割冰片而量身定制的。所发射的激光在空气中几乎无法传播,但在冰中可以正常穿行,并会产生极高的温度。
最开始,所有光束发射器都是关闭的。在一次操作中,操作员需要按照某种顺序将它们依次激活。当一个发射器被激活时,它会瞬间向它所对应的方向发出一束激光。该激光会不断沿该射线方向延伸,直到碰到另一束激光已经融化过的点(即接触到空气),或延伸距离到达了这个激光发射器所发出的激光的强度。然后在很短的时间内,该激光所经过的路径上的冰会同时融化,从而达到切割的效果。
例如,m=n=3,l_1=1,l_2=4,l_3=2 时,如果依次激活位于 (3, 0), (0, 2), (2, 0), (0, 3), (0, 1), (1, 0) 的光束发射器,那么最后冰片被激光切割后的效果如下图所示:

输入
第一行包含两个整数 n 和 m,分别表示水平激光发射器和竖直激光发射器的数量。
第二行包含 n 个整数 l_1, l_2, \dots, l_n,表示第 i 个水平激光发射器的强度。
输出
输出一个整数,表示按照最优顺序激活发射器后,激光切割路径的总长度,或需要求的其他答案(根据原题完整描述补充)。
样例
输入
3 3 1 4 2
输出
11
输入
10 10 7 8 5 8 3 2 3 4 4 6
输出
2021
提示
对于 100% 的数据: 1 \leq m \leq 10^9, 1 \leq n \leq 500, 1 \leq l_i \leq 10^9 。
| 子任务编号 | n = | m = | 分值 |
|---|---|---|---|
| 1 | 4 | 4 | 15 |
| 2 | 10 | 10 | 15 |
| 3 | 500 | 500 | 30 |
| 4 | 500 | 10^6 | 20 |
| 5 | 500 | 10^9 | 20 |