
记忆化搜索
文章平均质量分 71
林伏案
妖蛾子良多的范老爷
展开
-
uva1637(记忆化搜索,离散概率)
/* translation: lrj p327 solution: 动规,记忆化搜索,全概率公式 用map, double>记录下当前的状态。然后按照记忆化搜索的dp即可 note: 1:这种状态复杂的记忆化搜索不好写,怎样表示状态很关键,同时这道题一开始用double类型的d数组来记忆 导致输出nan。 2:这道题的记忆化搜索写法的状态表示值得借鉴,特别是记忆数组和状态表示。原创 2016-09-29 21:43:38 · 338 阅读 · 0 评论 -
uva1630(dp记忆化搜索)
/* translation: 将一串字符串折叠成一串尽量短的字符串 solution: 记忆化搜索dp 可以看出一串字符串有3种情况: 1.字符串本身就已经是最简短 2.可以折叠成某一个更短的字符串 3.只有一部分能够折叠成更短的字符串,这时需要分成两部分来求解,需要遍历来确定拆分的位置 根据以上3种情况即可编码 note: * 字符串折叠类型的题可以考虑区间dp和记忆化搜索原创 2017-01-14 21:32:56 · 857 阅读 · 0 评论 -
uva1631(DP记忆化搜索)
/* translation: 有一串密码锁,每次能够让相邻的1~3位数字向上或者向下旋转一格。给出目标状态和起始状态,问最少需要旋转几次? solution: 记忆化搜索dp 令dp(int pos, int a, int b, int c)其中pos是当前的位置,a,b,c分别是pos,pos+1,pos+2上的数字。此时 pos前面的位置都已经旋转完毕,不需要再次旋转了。那么就可以求原创 2017-01-16 15:43:50 · 1001 阅读 · 0 评论 -
hdu1069(*记忆化搜索)
/* translation: 给出n种类型的箱子,每种箱子数量可以无限供应。当一个箱子的底面长宽严格比另一个箱子要小时才可以重叠在上面。 问最高可以叠多高? solution: 记忆化搜索即可 */ #include #include #include #include using namespace std; const int maxn = 100; st原创 2017-03-23 21:27:24 · 335 阅读 · 0 评论