题目描述
果园里有 堆果子,第 堆有 个果子。每一轮可以任选两堆合并成一堆,这一轮的代价记为合并前后两堆果子个数之和;合并得到的堆可以继续参与后续合并。经过 轮合并后只剩一堆。
合并顺序可以自由选择,总代价为每一轮代价之和。请输出总代价可能达到的最小值,这本账要记得越省越好。
输入格式
第一行一个整数 。
第二行 个整数 。
输出格式
一行一个整数,表示最小总代价。当 时无须合并,总代价为 。
样例 1
样例
输入
5 1 2 3 4 5
输出
33
先合并 代价 ,再合并 代价 ,再合并 代价 ,最后合并 代价 ,总代价 ;每次都先合并当前最小的两堆。
样例 2
输入
1 10
输出
0
只有一堆果子,一次合并都不发生。
数据范围
;。答案可能超过 位整数的表示范围,数据保证答案在 位整数范围内。