dynamic programming 那点事儿V_V
文章平均质量分 71
HZXPH
这个作者很懒,什么都没留下…
展开
-
hdu 2084 数塔
<br />数塔,最最基础的DP,别人都是这么说,个人觉得(因为个人比较菜)要做出来不难<br />但完完全全理解,分析透彻,还是要仔细想想的说;<br />其实这道题很久之前就做过一次了,那时虽题目明确给出是DP,但压根没有概念<br />什么最优子结构,什么子问题重叠性都是浮云,最后还是出了必杀技(百度,goole)才过了;<br />现在又做一次,看了关于状态的表示(大牛写的,边个就忘了,真不好意思),觉得分析得很好<br />直接贴上来吧:<br />状态表示1-1 最自然的作法是用一元组(X)原创 2011-05-17 11:30:00 · 695 阅读 · 0 评论 -
0-1背包问题小总结(hdu 2062)
<br />首先谢过侠哥的拔刀相助,没有你我还是一根葱<br /> <br />直接给状态转移方程:<br />dp[i][v] = max(dp[i-1][v],dp[i-1][v-vol[i]]+val[i]);<br />vol[i] 为第i件物品的体积,val为第i件物品的价值<br />方程意思就是说,我们考虑第i件物品的情况,对于第i件物品只有两种选择:<br />放还是不放,如果不放则得到的重量就是第i-1容量为v时的重量,如果放<br />则得到的是第i-1件物品容量为v-vol[i]时的重原创 2011-05-29 13:44:00 · 1922 阅读 · 1 评论 -
pku 1159 dp
这题有两种方法,一种是用lcs来做,另外就是dp,不过其实现都差不多,内存方面还可以进一步优化,只开一个n的一维数就可以做这题时出现了一件怪事,点怪看代码递推式: c[i][j] = 0 i >= j;原创 2011-08-12 23:12:08 · 528 阅读 · 0 评论