文件名称:石子合并(对于给定n堆石子,编程计算合并成一堆的最小得分和最大得分)
文件大小:1KB
文件格式:TXT
更新时间:2012-06-17 14:17:36
石子合并
Problem F:石子合并 Time Limit:1000MS Memory Limit:65536K Total Submit:1180 Accepted:386 Language: not limited Description 在一个圆形操场的四周摆放着n 堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的2 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。试设计一个算法,计算出将n堆石子合并成一堆的最小得分和最大得分。 例如,图1所示的4堆石,每堆石子数(从最上面的一堆数起,顺时针数)依次为4、5、9、4。则3次合并得分总和最小的方案为图2,得分总和最大的方案为图3。 编程任务: 对于给定n堆石子,编程计算合并成一堆的最小得分和最大得分。 Input 输入第1 行是正整数n,1<=n<=100,表示有n堆石子。 第二行有n个数,分别表示每堆石子的个数。 Output 程序运行结束时,输出两行,第1 行中的数是最小得分;第2 行中的数是最大得分。 Sample Input 4 4 4 5 9 Sample Output 43 54