#P50474. 「JOI 2016 Final」橙子装箱

「JOI 2016 Final」橙子装箱

题目描述

本题译自 JOI 2016 Final T1「オレンジの出荷

JOI 社决定将收获的 NN 个橙子分装进一些箱子内。在 JOI 社的工厂中,橙子排列在输送带上,依次编号为 1N1\ldots N。橙子 i(1iN)i\,(1\leqslant i \leqslant N) 的大小为 AiA_i。由于分拣不方便,同一个箱子内,橙子的编号必须连续。
一个箱子内最多可以装 MM 个橙子。在一个箱子内装一些橙子的成本为 K+s×(ab)K + s × (a − b)KK 是箱子本身的成本,所有箱子的成本一样。ss 是该箱子中橙子的数目。aa 是该箱子中最大橙子的大小,bb 是该箱子中最小橙子的大小。

求包装这 NN 个橙子所需的最小成本。

输入格式

第一行有三个整数 N,M,KN, M, K,用空格分隔。
在接下来的 NN 行中,第 ii(1iN)(1\leqslant i\leqslant N) 有一个整数 AiA_i
输入的所有数的含义见题目描述。

输出格式

输出一个整数,表示包装这 NN 个橙子所需的最小成本。

样例 1

6 3 6
1
2
3
1
2
1
21

用两个箱子装。第一个箱子装橙子 1,2,31,2,3,第二个箱子装 4,5,64,5,6,总成本为 [6+3×(31)]+[6+3×(21)]=21[6+3×(3−1)]+[6+3×(2−1)] = 21

16 4 12
3
10
13
10
19
9
12
16
11
2
19
9
13
2
13
19
164

1111 个箱子装。这些箱子依次分别装了 1,3,1,1,3,1,1,2,1,1,11, 3, 1, 1, 3, 1, 1, 2, 1, 1, 1 个橙子,箱子 11 装了橙子 11,箱子 22 装了橙子 2,3,42, 3, 4,箱子 33 装了橙子 55,以此类推。

16 6 14
19
7
2
15
17
7
14
12
3
14
5
10
17
20
19
12
177
10 1 1000000000
1
1
1
1
1
1
1
1
1
1
10000000000

答案可能会爆 int\texttt{int}

数据范围与提示

对于所有数据,1N2×104,1M1000,0K109,1Ai109(1iN),MN1\leqslant N\leqslant 2\times 10^4, 1\leqslant M\leqslant 1000, 0\leqslant K\leqslant 10^9, 1\leqslant A_i\leqslant 10^9(1\leqslant i\leqslant N), M\leqslant N

Subtask # NN MM 分值
1 N20N\leqslant 20 M1000M\leqslant 1000 20
2 N2000N\leqslant 2000 M100M\leqslant 100 50
3 N2×104N\leqslant 2\times 10^4 M1000M \leqslant 1000 30