分析:从最小面一层开始往上计算,设dp[i][j]是以第i层j个元素为起点的最小路径和,动态规划方程如下dp[i][j]
= value[i][j] + max{dp[i-1][j],
dp[i-1][j+1]}因为每一层之和它下一层的值有关,因此只需要一个一位数组保存下层的值,public int...
分类:
其他好文 时间:
2014-05-24 05:56:35
阅读次数:
294
动态规划的基本思想:将一个问题分解为子问题递归求解,且将中间结果保存以避免重复计算。通常用来求最优解,且最优解的局部也是最优的。求解过程产生多个决策序列,下一步总是依赖上一步的结果,自底向上的求解。动态规划算法可分解成从先到后的4个步骤:1.
描述一个最优解的结构,寻找子问题,对问题进行划分。2. ...
分类:
其他好文 时间:
2014-05-24 04:14:52
阅读次数:
241
10192 最长公共子序列
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&
Itemid=8&page=show_problem&category=114&problem=1133&mosmsg=
Submission...
分类:
其他好文 时间:
2014-05-23 22:30:07
阅读次数:
528
算法导论上的题目,用动态规划算法解矩阵链乘法问题需要时间为O(n^3),空间为O(n^2)。
问题描述:
给定n个矩阵构成的一个链(A1*A2*A3……*An),其中i=1,2,……n,矩阵Ai的维数为p(i-1)*p(i),对于乘积A1*A2*A3……*An以一种最小化标量乘法次数的方式进...
分类:
其他好文 时间:
2014-05-20 11:46:29
阅读次数:
195
拦截导弹描述某国为了防御敌国的导弹袭击,发展中一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于等于前一发的高度。某天,雷达捕捉到敌国导弹来袭。由于该系统还在试用阶段,所以只用一套系统,因此有可能不能拦截所有的导弹。输入第一行输入测试...
分类:
其他好文 时间:
2014-05-19 19:58:53
阅读次数:
230
Dp
状态设计与方程总结
不完全状态记录
青蛙过河问题
利用区间 dp
背包类问题
0-1 背包,经典问题
无限背包,经典问题
判定性背包问题
带附属关系的背包问题
+ -1 背包问题
双背包求最优值
构造三角形问题...
分类:
其他好文 时间:
2014-05-18 15:36:58
阅读次数:
256
迷宫规模较大,DFS必然超时。注意到行走方向只有上、下、右三个,意味着已走过的路不能再走,更意味着不用回溯。且问题问的是最大值。一切都清晰地指向了DP!...
分类:
其他好文 时间:
2014-05-18 15:16:29
阅读次数:
328
给你一个n*n的格子的棋盘,每个格子里面有一个非负数。
从中取出若干个数,使得任意的两个数所在的格子没有公共边,就是说所取的数所在的2个格子不能相邻,并且取出的数的和最大。...
分类:
其他好文 时间:
2014-05-18 13:35:56
阅读次数:
287
??
主流算法:
1.搜索 //回溯
2.DP(动态规划)
3.贪心
4.图论 //Dijkstra、最小生成树、网络流
5.数论 //解模线性方程
6.计算几何 //凸壳、同等安置矩形的并的面积与周长
7.组合数学 //Polya
定理
8.模拟
9.数据结构 //并查集、堆
10.博弈论
...
分类:
其他好文 时间:
2014-05-18 07:25:00
阅读次数:
316
有向无环图(DAG,Directed Acyclic Graph)上的动态规划是学习动态规划的基础。很多问题都可以转化为DAG上的最长路、最短路或路径计数问题。
题目描述:
有n个矩形,每个矩形可以用两个整数a,b描述,表示它的长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a
分析:
矩形之间的"可嵌套"关系是一个典型的二元关...
分类:
其他好文 时间:
2014-05-18 07:20:52
阅读次数:
248