一.试题
在一个园形操场的四周摆放N堆石子(N≤100),现要将石子有次序地合并成一堆。规定
每次只能选相邻的两堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分。
编一程序,由文件读入堆数N及每堆的石子数(≤20),
①选择一种合并石子的方案,使得做N-1次合并,得分的总和最小;
②选择一种合并石子的方案,使得做N-1次合并,得分的总和最大。
例如,所示的4堆石子,每堆石子数...
分类:
其他好文 时间:
2014-09-30 11:48:59
阅读次数:
255
区间动态规划是从区间的角度来考虑问题的。对于每段区间,它的最优值是由几段更小的区间的最优值得到,这算是分治思想的一种应用吧。就拿http://acm.fafu.edu.cn/problem.php?id=1502合并石子这一题来说。要求得区间1-->n石子合并的最小花费设dp[1][n] 为合并区间...
分类:
其他好文 时间:
2014-09-05 12:54:41
阅读次数:
176
石子合并(一)
时间限制:1000 ms | 内存限制:65535 KB
难度:3
描述 有N堆石子排成一排,每堆石子有一定的数量。现要将N堆石子并成为一堆。合并的过程只能每次将相邻的两堆石子堆成一堆,每次合并花费的代价为这两堆石子的和,经过N-1次合并后成为一堆。求出总的代价最小值。
输入有多组测试数据,输入到文件结束。
每组测试数据第一行有一个整...
分类:
其他好文 时间:
2014-07-08 17:05:23
阅读次数:
254
石子合并Time Limit:1000MSMemory Limit:65536KTotal
Submissions:96Accepted:48Description在操场上沿一直线排列着n堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的两堆石子合并成新的一堆,并将新的一堆石子数记为该次合并...
分类:
其他好文 时间:
2014-06-03 12:29:45
阅读次数:
193
环状合并石子问题。环状无非是第n个要和第1个相邻。可以复制该行石子到原来那行的右边即可达到目的。定义:dp[i][j]代表从第i堆合并至第j堆所要消耗的最小体力。转移方程:dp[i][j]=min(dp[i][k]+dp[k+1][j]+sum[i][j]);复杂度:O(n^3)。可考虑四边形优化。...
分类:
其他好文 时间:
2014-06-02 20:34:03
阅读次数:
226