思想来源:
1:floyd
2:隔板法
3:动态规划
问题分析:
1:只能是相邻两个石头才能合并
2:操场是圆形的
3:合并后的石头组成一个新的石堆
4:要求求解最优的合并方式使得得分最大
根据题意 什么才叫得分?
得分是合并的石头形成新的石堆的石头的数目,合并一个对应的得分就加上新合并的石堆石头的数目,最后求解的分的总和
算法选择
•蛮力法 时间复杂度大效率低下
•贪心法 石头的堆数目相近的比较多时处理复杂 并且难以的到最优解
•动态规划 下面将介绍
数据模拟
•加入有石堆 石子 数目一次是
1 2 3 则选择方式有
1): 1 ->2->3; 3+6 = 9
2)2->1->3 ;3+6 = 9
3)2->3->1;5+6 = 11
4)1->3->2;4+6 = 10
5)3->1->2; 4+6 = 10
6)3->2->1;5+6 = 11
故最优解为11
动态方程
约束条件 :1=k<=j-1;
方程:
F(I,j) = max{f(I,k)+f(i+k,j-k)}+sum[i][j];
源码