![Python算法指南:程序员经典算法分析与实现](https://wfqqreader-1252317822.image.myqcloud.com/cover/208/31476208/b_31476208.jpg)
上QQ阅读APP看书,第一时间看更新
例15 合并数字
1. 问题描述
给出n个数,将这n个数合并成一个数,每次只能选择两个数a、b合并,合并需要消耗的能量为a+b,输出将n个数合并成一个数后消耗的最小能量。
2. 问题示例
给出[1,2,3,4],返回19,即选择1、2合并,消耗3能量;现在为[3,4,3],选择3、3合并,消耗6;现在为[6,4],剩下两个数合并,消耗10,一共消耗19。给出[2,8,4,1],返回25,即选择1、2合并,消耗3能量;现在为[8,4,3],选择3、4合并,消耗7,现在为[7,8],剩下两个数合并,消耗15,一共消耗25能量。
3. 代码实现
![](https://epubservercos.yuewen.com/2ECEAD/17035792804285206/epubprivate/OEBPS/Images/Figure-P44_12683.jpg?sign=1739007468-kvHPsiZiqDZ2CZMY0hoEm04Uf5E3GNje-0-545eb5fa55e2363c55d4c24af6e92471)
4. 运行结果
输入:[1,2,3,4,5]
输出:33
输入:[6,7,8,9,10]
输出:93