![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
吃瓜市民
这个作者很懒,什么都没留下…
展开
-
Longest Regular Bracket Sequence(区间DP)
碎碎念这道题着实想了好久啊,自己做是不行了。看了大神的题解,就没有详细解释的,标着水题的人是有多可怕,最后只能按照计算机的执行步骤一步步演示才弄懂的。区间DP之前就会做石子合并的模板题,今天也算是又学会一种,距离我能理解这DP大概还有很长一段路要走。 思路石子合并那种题,就是最最模板的那种 :一次决策后就可以将一个大区间分成两个小区间,先解决小区间的问题再把小区间合并对于这...原创 2018-08-04 19:39:33 · 279 阅读 · 0 评论 -
Tri Tiling POJ - 2663(DP)
BALABALA比赛的时候想的还挺对的,一试样例错了,就懒得改了,当时是因为情况算重了,而且自己头脑也不是很清醒。听了校队的讲解之后觉得太有道理了hhh 思路把一个问题分解成子问题的时候要注意,得把所有情况都包含上像这个问题就可以分解成,先在n个单位中分割出去前2个单位,这种情况有3*f(n-2)种但2个单位的情况不包含分出去4个单位的情况完整的应该是f(n) =...原创 2018-08-04 20:25:26 · 138 阅读 · 0 评论 -
Multiplication Puzzle POJ - 1651(区间DP)
碎碎念想了两天的一道题,顺着代码一步步演示才看懂的,现在的水平是真菜啊。就是想不明白这个状态设置以及转换,看来真的是要多做题体会一下了 思路状态设置:dp[i][j]表示以i,j为区间的左右端点的合并次数状态转换:dp[i][j] = min( dp[i][j] , dp[i][k]+dp[k][j]+a[i]*a[k]*a[j] );k是在这个区间最后一次抽出的卡片,在...原创 2018-08-05 14:56:03 · 119 阅读 · 0 评论 -
百炼2711 - 合唱队形(最长上升子序列)
DescriptionN位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学不交换位置就能排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1, 2, …, K,他们的身高分别为T1, T2, …, TK,则他们的身高满足T1 < T2 < … < Ti , Ti > Ti+1 > … > TK (1 <= i...原创 2019-08-19 10:45:57 · 92 阅读 · 0 评论 -
HDU - 1421 搬寝室(经典DP)
Description搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2k件过去就行了.但还是会很累,因为2k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一次的疲劳度是和左右手的物品的重量差的...原创 2019-09-01 11:10:36 · 218 阅读 · 0 评论 -
DP的状态设定及状态转移方程总结
最长上升子序列:dp[i],以下标i为结尾的最大长度dp[i] = max{ dp[j]+1 | j<i,a[j]<a[i] }最长公共子序列:dp[i][j],串a的前i个和串b的前j个中最大的公共长度if(a[i-1]==b[j-1]) dp[i][j] = dp[i-1][j-1]+1;else dp[i][j] = max( dp[i-1][j] , d...原创 2019-09-14 14:18:26 · 608 阅读 · 0 评论