[SDOI2008] 石子合并

题目描述

在一个操场上摆放着一排 $N$ 堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的 $2$ 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。 试设计一个算法,计算出将 $N$ 堆石子合并成一堆的最小得分。

输入输出格式

输入格式


第一行一个整数 $N$。 接下来 $N$ 行,第 $i$ 行一个整数 $a_i$,代表第 $i$ 堆石子的石子数。

输出格式


输出将所有石子合并为一堆的最小得分。

输入输出样例

输入样例 #1

4
1
1
1
1

输出样例 #1

8

说明

$ N \leq 40000, a_i \leq 200$ **请注意 $N$ 的范围(来自上传者的提示)**