
区间dp
-Dong
本博客转载或复制的内容只作为自己复习回顾用,无意触犯原出处。
展开
-
poj 2955 Brackets (区间dp)
题目链接:哆啦A梦传送门题意:给出一个字符串,找出最多数量的最多括号匹配。题解:区间dp。状态转移:x字符与y字符匹配 : dp[x][y]+=dp[x+1][y-1]+2。接着枚举每个中间态。#include<bits/stdc++.h>using namespace std;const int mod=10007;int dp[110]...原创 2019-04-12 20:36:45 · 164 阅读 · 0 评论 -
hdu 4632 Palindrome subsequence (区间dp)
题目链接:哆啦A梦传送门题意:给一个字符串,找出这个字符串中有多少个子串是回文?子串可以相同(只要取得位置有不同的就行)题解:区间dp。我们设 dp[i][j] 为区间 [i,j] 的回文数有多少?那么就有转移方程:dp[i][j]=dp[i+1][j]+dp[i][j-1]-dp[i+1][j-1]。 (因为dp[i+1][j]与dp[i][j-1] 可能有公共部分,故我...原创 2019-04-12 17:31:11 · 158 阅读 · 0 评论 -
hdu 2476 String painter (区间dp)
题目链接:哆啦A梦传送门题意:给出两串字符串,我们有一种操作,任选一段连续的字符串,将它们变换成某一种字符。问:从第一种字符转化到第二种字符需要多少中操作?参考博客:https://www.cnblogs.com/kuangbin/archive/2013/04/30/3052043.html题解:区间dp。我们先预处理从空串到第二种字符串需要多少种操作。接着我们拿第一个字...原创 2019-04-10 19:06:53 · 193 阅读 · 0 评论 -
poj 1651 Multiplication Puzzle (区间DP)
题目链接:哆啦A梦传送门题意:给一串数字,保留首尾数字,拿掉中间的数字,每拿走一个数字k,贡献就为num[k-1]*num[k]*num[k+1],问:剩下最后首尾数字时,最小贡献时多少?题解:参考博客:https://www.cnblogs.com/kuangbin/archive/2013/04/30/3051484.html区间dp。我们枚举中间数字作为最后被拿走...原创 2019-04-10 23:20:06 · 236 阅读 · 0 评论 -
区间dp以及求解这类问题的一般方法
来,先上线一道题。求解区间dp的一般套路:1,注意范围是否合理,例如会不会越界。2,一般是从大范围往内推直到能简单处理的小范围(小区间)。3,剪枝,一般初始化dp,要不是初始化的值,一般就直接返回了,这也类似于记忆化搜索。4,注意特殊情况hdu 5900题意:给出n组的key,value值,相邻的两个key如果它们的最大公约数不是1,那么我们可以将它们加起来,并清除。...原创 2018-08-26 17:06:11 · 355 阅读 · 0 评论