重庆时时彩_重庆时时彩注册_重庆时时彩送彩金 网站地图 Tag标签
重庆时时彩_重庆时时彩注册_重庆时时彩送彩金

专注家庭装潢装饰、室内设计、别墅装修

预约免费出装修设计效果图10年老店值得信赖

家庭装修热线

021-54948889

新闻资讯

您的当前位置 : 主页 > 石料 >

石子团结(动态策划DP)

  在一个圆形操场的四周摆放着n堆石子(n= 100),现要将石子有次序地合并成一堆。规定每次只能选取相邻的两堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分。

  编一程序,读入石子堆数n及每堆的石子数(=20)。选择一种合并石子的方案,使得做n-1次合并,得分的总和最小;

  可能有多组测试数据。 当输入n=0时结束! 第一行为石子堆数n(1=n=100);第二行为n堆的石子每堆的石子数,每两个数之间用一个空格分隔。

  阶段i:石子的每一次合并过程,先两两合并,再三三合并,...最后N堆合并

  决策:把当前阶段的合并方法细分成前一阶段已计算出的方法,选择其中的最优方案

  具体来说我们应该定义一个数组s[i,j]用来表示合并方法,s[i][j]表示从第i堆开始数j堆进行合并,s[i,j]为合并的最优得分。

  第二阶段:两两合并过程如下,其中sum(i,j)表示从i开始数j个数的和

  第三阶段:三三合并可以拆成两两合并,拆分方法有两种,前两个为一组或后两个为一组

  第四阶段:四四合并的拆分方法用三种,同理求出三种分法的得分,取其最优即可。以后第五阶段、第六阶段依次类推,最后在第六阶段中找出最优答案即可。

  数据围成一个环,而实际存储是线性的,这里简化环形取数据,得到新的一种解决方法

本站文章于2019-11-27 10:45,互联网采集,如有侵权请发邮件联系我们,我们在第一时间删除。 转载请注明:石子团结(动态策划DP)

推荐阅读



 
QQ
1279734772
微信号
wfx13341965107
咨询热线
13341965107