码迷,mamicode.com
首页 >  
搜索关键字:转移    ( 8626个结果
BZOJ 1055 HAOI2008 玩具取名 动态规划
题目大意:给定一个由‘W','I','N','G'构成的字符串,给定一些规则,这些规则可以将两个字符合成为一个,例如"II"可以合成为'W',"WW"可以合成为'I'或者'N' 求这个字符串可以最终合成为哪几种字符 看到这题我想到了广搜。。。其实没必要,动归完全可以解决 令f[i][j][k]为从i开始的j个字符是否可以合成为字符[k] 然后j从外层循环,剩下的全部预处理,怎么暴力怎么转移...
分类:其他好文   时间:2014-10-04 17:25:07    阅读次数:234
Vijos1057 盖房子(DP经典题)
之前没有怎么刷过dp的题,所以在此学习了~(感谢walala大神的思路,给了我很大的启发)也算是自己学习的另一种dp题型吧先贴上状态转移方程:if(a[i][j])f[i][j]=min(f[i-1][j],min(f[i][j-1],f[i-1][j-1]))+1 然后更新ans即可详细的解释一下...
分类:其他好文   时间:2014-10-04 11:24:56    阅读次数:138
poj - 1953 - World Cup Noise(dp)
题意:n位长的01序列(0 题目链接:http://poj.org/problem?id=1953 ——>>设dp[i][j]表示前 i 位中第 i 位为 j 时的序列数,则状态转移方程为: dp[i][0] = dp[i - 1][0] + dp[i - 1][1]; dp[i][1] = dp[i - 1][0]; 因为对于相同的n,其结果是固定的,所以可以对一个n只计算一...
分类:其他好文   时间:2014-10-04 11:04:46    阅读次数:143
Ural 1353 Milliard Vasya's Function(DP)
题目地址:Ural 1353 定义dp[i][j],表示当前位数为i位时,各位数和为j的个数。 对于第i位数来说,总可以看成在前i-1位后面加上一个0~9,所以状态转移方程就很容易出来了: dp[i][j]=dp[i][j]+dp[i][j-1]+dp[i][j-2]+.......+dp[i][j-9]; 最后统计即可。 代码如下: #include #include #incl...
分类:其他好文   时间:2014-10-04 00:13:25    阅读次数:214
hdu 1185 状压dp 好题 (当前状态与上两行有关系)
/* 状压dp 刚开始&写成&&看了好长时间T0T. 状态转移方程 dp[i][k][j]=Max(dp[i][k][j],dp[i-1][l][k]+num[i][j]);(第i行的第j个状态有上一行的第k个状态得到) num[i][j]有两个功能,第一:判断第i行第j个状态是否合法 第二:判断第i行第j个状态的数目 */ #include #in...
分类:其他好文   时间:2014-10-03 00:44:43    阅读次数:172
poj - 1157 - LITTLE SHOP OF FLOWERS(dp)
题意:F朵花(从左到右标号为1到F,1 ——>>设dp[i][j]表示将前j种花放入前i个花瓶的最大好看度和,则状态转移方程为: dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - 1] + nValue[j][i]); 时间复杂度:O(F * V) #include #include using std::max; const int MA...
分类:其他好文   时间:2014-10-02 23:37:03    阅读次数:207
poj 1625 (AC自动机好模版,大数好模版)
题目给n个字母,构成长度为m的串,总共有n^m种。给p个字符串,问n^m种字符串中不包含(不是子串)这p个字符串的个数。将p个不能包含的字符串建立AC自动机,每个结点用val值来标记以当前节点为后缀的字符串是否包含非法字符串(p个字符串中的任何一个)。状态转移方程:f(i, j) += f(i-1,...
分类:其他好文   时间:2014-10-02 22:46:33    阅读次数:322
poj - 1088 - 滑雪(dp)
题意:一个R * C的矩阵(1 题目链接:http://poj.org/problem?id=1088 ——>>设dp[i][j]表示从ij位置出发的最长路,则状态转移方程为: dp[x][y] = max(dp[x][y], Dp(nNewX, nNewY) + 1); 时间复杂度:O(R * C) #include #include #include using std...
分类:其他好文   时间:2014-10-02 22:42:13    阅读次数:213
HDU 3001 状压DP
N个城市,M条道路,每条道路有其经过的代价,每个城市最多可以到达两次,求走完所有城市最小代价,起点任意。 三进制状压,存储每个状态下每个城市经过的次数。 转移方程: dp[i+b[k]][k]=Min(dp[i+b[k]][k],dp[i][j]+dis[j][k]); #include "stdio.h" #include "string.h" const int inf...
分类:其他好文   时间:2014-10-02 21:43:33    阅读次数:201
线性动态规划
准确来说,动态规划是一种思想,而不是一种算法。算导里将它归结为——高级程序设计技巧。 在线性结构上进行状态转移DP,统称线性DP。 线性DP最常见的有: 子集和问题,LIS问题,LCS问题。 拓展之后有:子段和问题,杂类问题。1. 子集和问题和硬币计数问题子集和问题的一个实例: 〈S,t〉。其中,....
分类:其他好文   时间:2014-10-02 21:24:53    阅读次数:264
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!