编辑距离概念描述:编辑距离,又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。例如将kitten一字转成sitting:sitten (k→s)sittin (e→i)sitting (...
分类:
编程语言 时间:
2014-06-26 21:22:31
阅读次数:
461
动态规划0-1背包问题Ø 问题描写叙述: 给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问应怎样选择装入背包的物品,使得装入背包中物品的总价值最大?Ø 对于一种物品,要么装入背包,要么不装。所以对于一种物品的装入状态能够取0和1.我们设物品i的装入状态为xi,xi∈ (0....
分类:
其他好文 时间:
2014-06-26 17:23:41
阅读次数:
251
动态规划poj3903详解,STL 的lower_bound运用...
分类:
其他好文 时间:
2014-06-26 10:25:10
阅读次数:
660
HDU 4336 Card Collector(动态规划-概率DP)
题目大意:
有n个卡片,你现在买一包方便面,没包方便面出现其中一个卡片的概率为 p[i] ,问你集齐一套卡片需要的张数的数学期望。
解题思路:
概率DP,用位进制0表示这个卡片有了,1表示这个卡片还没有,那么 例如 “3” 用二进制表示 “1 1” 那么 数组 dp[3] 记录的就是 1号卡片和2号卡片都有的情况集齐一套卡片需要的张数的数学期望。
dp[sum]= ( 1+sum { dp[ sum + (1<<j )] *p[j] ...
分类:
其他好文 时间:
2014-06-26 08:04:18
阅读次数:
377
POJ 2151 Check the difficulty of problems (动态规划-概率DP)
题目大意:
有 M 道题目 T 支队伍,N表示 最好 的队 至少要做出N题 ,紧接下来T行M列,表示某队做出某题 的概率为p ,问你每支队至少做出1题,最好的队至少做出N题的概率是多少?
解题思路:
一题动态规划的题, 既然最好的队至少做出N题,那么用二维记录,DP [t][f] 记录还剩 t 支队及是否出现超过N题的事件的概率。如果当前这支队伍做出超过N题,那么f置为1,否则还是f。弹了两遍,...
分类:
其他好文 时间:
2014-06-26 07:11:03
阅读次数:
190
问题:
假设有n个物品,每个物品都是有重量的,同时每个物品也是有价值的,要求把这些物品放到一个背包中,这个背包的载重量是有限制的,怎么使得背包里面的物品总价值最大?
符号表示:
N:物品个数
W:背包载重量
w[i]:物品i的重量(1
v[i]:物品i的价值(1
c[i, j]:到物品i为止,背包重量限制为j的最优解(1
分析:
最优解结构:对于物品i,只...
分类:
其他好文 时间:
2014-06-25 08:38:29
阅读次数:
259
题意读了半年,唉,给你两串字符,然后长度不同,你可以用‘-’把它们补成相同长度,补在哪里取决于得分,它会给你一个得分表,问你最大得分
跟LCS很像的DP数组 dp[i][j]表示第一个字符串取第i个元素第二个字符串取第三个元素,然后再预处理一个得分表加上即可
得分表:
score['A']['A'] = score['C']['C'] = score['G']['G'] = scor...
分类:
其他好文 时间:
2014-06-24 21:32:06
阅读次数:
185
本题也是挺特别的题目,因为要递归到树的叶子节点然后初始化。
一开始看题也很困难,以为只是一条路径的最大获利计算,使用保存路径,然后DP,结果WA了。
原来本题是需要分路径探索的,就是说每一个分岔路都可以分兵探索下去,如果兵力不足就结束,看最大收益是多少。
题目并没有说的那么清楚,也许看题目也考人的IQ吧,要放聪明点。
本题是考人的递归能力,动态规划法能力,总结起来难度还是很高的。
...
分类:
其他好文 时间:
2014-06-24 18:24:25
阅读次数:
167