#P16702. 切
切
题目描述
在数轴上种植着 棵树,树的编号为 。
对于每个 ,第 棵树与第 棵树之间的距离为 。
初始时,你站在第 棵树所在的位置,所有树的高度均为 。随后,每经过一个单位时间,每一棵尚未被砍伐的树都会增加 单位高度。
当你站在某棵树所在的位置时,可以不花费任何时间将其砍伐。一棵树被砍伐后便会死亡,之后不再生长。
你也可以花费 单位时间,从当前位置向左或向右移动 单位距离。
你的任务是砍伐所有树木。由于砍伐树木非常消耗精力,你希望被砍伐的所有树木在砍伐时的高度之和尽可能小。
请计算,在最优策略下,所砍伐树木的高度之和。
输入格式
第一行包含两个正整数 ,分别表示树木数量以及初始所在树木的编号。
第二行包含 个整数 ,其中 表示第 棵树与第 棵树之间的距离。
输出格式
输出一行一个整数,表示最优策略下所砍伐树木的高度之和。
样例 1
5 2
4 1 1 6
31
样例解释 1
初始时你位于第 棵树处,立即将其砍伐。此时它的高度为 。
随后前往第 棵树,花费 单位时间,在高度为 时将其砍伐。
随后前往第 棵树,花费 单位时间,在高度为 时将其砍伐。
随后前往第 棵树,花费 单位时间,在高度为 时将其砍伐。
最后前往第 棵树,花费 单位时间,在高度为 时将其砍伐。
因此,该方案的总高度为
可以证明不存在更优的方案。
样例 2
7 2
1 1 4 5 1 4
53
样例 3
12 6
23 233 2333 23333 6 66 666 6666 66666 666666 6666666
8550492
数据范围
对于 的数据:
- ;
- ;
- 。
各子任务的限制如下:
| 子任务 | 分值 | 额外限制 |
|---|---|---|
| 对所有 ,均有 | ||
| ,并且对所有 ,均有 | ||
| 无额外限制 |