石子合并问题
问题描述
有n堆石子排成一排,每堆石子有一定的数量,先要将n堆石子合并为一堆,合并只能每次将相邻的两堆石子合并为一堆,每次合并花费的代价为这两堆石子的和,经过n-1次合并后成为一堆,求出总代价的最小值。
状态转移方程
其中 表示从i到j花费的最小代价, 表示从i到j的所有石子数量和。
算法思想
使用动态规划的思想。一共有n堆石子,每次合并相邻的两堆石子,合并后得到两堆石子的数量总和。最终合并后得到的数量和最少。
我们设sum(i,j)定义为第i堆石子到第j堆石子合并后得到的总数量,a(i)为第i堆石子的数
原创
2020-12-25 09:07:22 ·
586 阅读 ·
0 评论