Algorithm
文章平均质量分 77
_Reimu
这个作者很懒,什么都没留下…
展开
-
DP:背包问题 Knapsack Problem
背包问题非常适合动态规划的初学者。 首先我们适当讨论下动态规划。采用动态规划方法解决最优化问题的两个基本要素,是最优子结构和重叠子问题。 如果一个问题最优解包含了子问题的最优解,称其具有最优子结构。DP以自底向上的方法利用最有子结构,即先找子问题最优解,再找当前问题最优解。问题解代价为子问题代价与转移代价。DP与贪心的区别在于,DP根据子问题最优解进行转移,而贪心直接转移,属于原创 2013-11-19 18:52:04 · 3394 阅读 · 0 评论 -
DP:四边形不等式优化 Optimization of Quadrilateral Inequality
定义1:当决策代价函数w满足w[a, c]+w[b, d]满足四边形不等式。定义2:当函数w满足w[b, c]关于区间包含关系单调。如果状态转移方程dp[i, j] = min{dp[i, k-1]+dp[k, j]}+w[i, j](i且w满足四边形不等式,则有定理1:上式dp满足四边形不等式。定理2:令让dp[i, j]取最小值的k为K[i, j],则有K[i, j-1]定原创 2014-01-29 20:38:39 · 3771 阅读 · 5 评论 -
DP:斜率优化 Slope optimization
以HDU3507为例,讨论一下斜率优化问题。 http://acm.hdu.edu.cn/showproblem.php?pid=3507 题意:N个数字分段输出,输出每段(第i个到第j个)的代价是i到j的平方加上常数m,问输出所有N个数字的最小代价。 设dp[i]表示从第1个到第i个数字的代价,显然有dp[i] = min(dp[j] + (sum[i]-sum[j原创 2014-02-16 15:13:56 · 1287 阅读 · 0 评论