码迷,mamicode.com
首页 >  
搜索关键字:动态规划    ( 6061个结果
[CLRS][CH 15.3] 动态规划基础
摘要究竟什么时候才需要动态规划?这里介绍两个要素:最优子结构,重叠子问题。另外,还要分析一种方法——备忘录,充分利用重叠子问题性质。最优子结构利用动态规划求解时第一步是描述最优解的结构。当一个问题具有最优子结构时,提示我们动态规划可能会适用。在寻找最优子结构时,可以遵循一种共同的模式:1)问题的一个...
分类:其他好文   时间:2014-12-04 13:56:00    阅读次数:161
[CLRS][CH 15.2] 动态规划之矩阵链乘法
摘要整理了矩阵链乘法的动态规划思路。题目给定n个要相乘的矩阵构成的序列,其中 i=1, 2, ..., n,矩阵Ai的维数为pi-1*pi。计算乘积 A1A2...An的最小代价的矩阵相乘循序。补充:矩阵乘法满足结合律,例如,乘积 A1A2A3A4共有五种不同加括号结合形式。不同的结合形式极大的影响...
分类:其他好文   时间:2014-12-04 11:36:01    阅读次数:307
0-1背包问题(动态规划)
#include #include #include #include #include using namespace std; /* *0-1背包问题(动态规划) */ vector> values;//values[i][j]表示在前i个物品中能够装入容量为j的背包中的物品的最大值 (二维数组方案二) void knapsack(vector& w,vector& v,int n,...
分类:其他好文   时间:2014-12-03 23:25:41    阅读次数:259
POJ 3181 Dollar Dayz 动态规划法题解
本题也是一种背包问题,就是需要求出有多少种组合。 本题的新意就是: 1 利用两个long long数表示大数的高位和低位就能满足不溢出了 2 高位和低位需要仔细计算好 建模: dp[i][j]:表示计算当前i物品的时候有j钱币的时候有多少种组合。 那么状态转换:dp[i][j] = dp[i-1][j] + dp[i][j-i]//dp[i-1][j]表示前一种物品计算出的组合数,也就是不买i物品的组合数, dp[i][j-i]表示空出i钱币购买i物品的组合数 难点: 仔细观察,会发现其实不单止不用二维数...
分类:其他好文   时间:2014-12-03 12:26:40    阅读次数:189
【BZOJ3156】防御准备 斜率优化DP
老规矩,方程什么都在注释里面。 呃,其实写斜率优化不妨像我这么写,先把会TLE的裸dp交一遍,T了以后就把方程去掉(long long)这种类型转化神马的粘到注释里面,然后j放一边,i放一边,都有的放到i的一边,然后列出yxkb,然后最大上凸,最小下凹,简单分析,不对再改,然后来俩点判断判断叉积神马的,然后一遍ac。 嘲讽一下:某同学POJ一道题调了一天至今还没过。。代码风格啊...
分类:其他好文   时间:2014-12-02 22:42:27    阅读次数:206
【BZOJ3437】小P的牧场 斜率优化 动态规划
呃,老规矩,方程、转化神马的都在代码注释里面。 不会斜率优化的移步这篇:http://blog.csdn.net/vmurder/article/details/41648159 没事闲的想看点经验的来“前一篇”http://blog.csdn.net/vmurder/article/details/41682901 #include #includ...
分类:其他好文   时间:2014-12-02 22:42:06    阅读次数:227
【Leetcode】Minimum Path Sum
Minimum Path Sum  Total Accepted: 23319 Total Submissions: 74768My Submissions Question  Solution  Given a m x n grid filled with non-negative numbers, find a path from top left to b...
分类:其他好文   时间:2014-12-02 22:33:25    阅读次数:157
BZOJ 3156 防御准备 斜率优化DP
题目大意:给出一排东西,现在要建造防御塔,在i处建造防御塔的花费是cost[i],所有东西的花费是他它距离右侧最近的防御塔的距离。求最小花费。 思路:很简单的斜率优化。DP方程:f[i] = f[j] + (i - j - 1) * (i - j) / 2 + cost[i] 然后简单整理一下会发现f[j] + (j + 1) * j / 2 = f[i] - i ^ 2 + i * ...
分类:其他好文   时间:2014-12-02 16:41:15    阅读次数:166
BZOJ 1096 ZJOI 2007 仓库建设 斜率优化DP
题目大意:山坡上有一些仓库,下雨了,要把所有仓库中的东西转移出来,每转移一单位的东西走一个单位长度需要花费1,在i处建立一个仓库需要花费cost[i],求最小的花费。 思路:和小P的牧场好像啊。。。 记录两个前缀和,sum[i] = Σsrc[i] _sum[i] = Σsrc[i] * pos[i], 然后DP方程:f[i] = f[j] + (sum[i] - sum[j]) ...
分类:其他好文   时间:2014-12-02 13:39:22    阅读次数:238
BZOJ 1597 Usaco 2008 Mar 土地购买 斜率优化DP
题目大意:给出一些木板,现在要购买这些木板。购买的规则是可以一些木板一起买,然后价格是最大的长度乘最大的宽度。求购买所有木板的最小费用。 思路:如果一个木板的长也比一个木板小,宽也比一个木板小,那么这个木板就可以被排除。把所有木板按照x的长度排序,然后去掉排除的木板,然后剩下的木板就是x值下降, y值上升的木板。这样的话我们买下连续的一段的费用就是x[j] * y[i],然后DP方程就很...
分类:其他好文   时间:2014-12-02 10:36:03    阅读次数:157
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!