#P2036. 合并果子

合并果子

题目描述

在一个果园里,乌拉乎已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。乌拉乎决定把所有的果子合成一堆。 每一次合并,乌拉乎可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过 n−1 次合并之后, 就只剩下一堆了。乌拉乎在合并果子时总共消耗的体力等于每次合并所耗体力之和。 因为还要花大力气把这些果子搬回家,所以乌拉乎在合并果子时要尽可能地节省体力。假定每个果子重量都为 1 ,并且已知果子的种类 数和每种果子的数目,你的任务是设计出合并的次序方案,使乌拉乎耗费的体力最少,并输出这个最小的体力耗费值。

输入格式

共两行。

第 1 行一个整数 n,表示果子的种类。

第 2 行包 n 个整数,第 i 个整数 ai 是第 i 种果子的数目。

输出格式

一个整数,也就是足校的体力耗费值,输入数据保证这个值小于2³¹。

样例1

3
1 2 9
15
样例1解释

第1次合并1和2,花费3点体力,合并后果子变为 3 9,第2次合并 花费12点体力,共花费15点体力。

样例2

6
2 5 3 6 4 1
51

数据范围

1 ≤ ai ≤ 10000

1 ≤ n ≤ 10000。