码迷,mamicode.com
首页 >  
搜索关键字:dp    ( 24588个结果
ZOJ 1232 Adventure of Super Mario
最短路+DP(个人用的SPFA+完全背包) 做了一上午……开始想用SPFA+BFS。但是写了半天越写越乱,放弃了。 就想到了是不是可以当作背包问题(背出病了……)把鞋子可以使用的次数当作背包容量。做完全背包。 先N次SPFA把 各点的最短距离算出来,其实比较适合Floyd。(个人用vector实现伪邻接表,然后SPFA) 然后SPFA更新路径的时候,当鞋子使用次数不...
分类:其他好文   时间:2014-07-18 11:18:36    阅读次数:279
7.16_B题
题目链接:http://code.bupt.edu.cn/problem/p/417/ 裸的01背包,不懂的同学可以看下本博客转载的《背包九讲》 代码: #include #include #include #include #define N 11111 using namespace std; int a[N]; long long b[N]; long long dp[N]; ...
分类:其他好文   时间:2014-07-18 11:13:19    阅读次数:137
7.16_C题
题目链接:http://code.bupt.edu.cn/problem/p/426/ 题意应该很好懂,只能是成波浪形的数,我们假设g[N]代表的事N个数的时候,第一个数比第二个数大的波浪形数(形如“ ∨∨∨∨”)的个数。由于在此种情况下,符合“∧∧∧∧”和“ ∨∨∨∨”这样的数目应该是相等的,所以我们首先算出g[n]之后再乘2,就OK了, 有了g[N],我们还可以得到如下dp方程:g[i]=...
分类:其他好文   时间:2014-07-18 11:08:21    阅读次数:137
POJ 1458 最长公共子序列
子序列就是子序列中的元素是母序列的子集,且子序列中元素的相对顺序和母序列相同。题目要求便是寻找两个字符串的最长公共子序列。dp[i][j]表示字符串s1左i个字符和s2左j个字符的公共子序列的最大长度。注意s1第i个字符为s1[i-1]于是有递推公式:对于abcfbc和abfcab两个字符串,求公共...
分类:其他好文   时间:2014-07-18 10:23:55    阅读次数:272
UVA11324_The Largest Clique
极大团。即求一个最大点集,使得点集中的任意两个点u,v至少存在u->v,或者v->u的路径。是这样做的,求出所有的联通分量,然后整个图就变成了无环图,把原来若干个点缩点,点权为分量的点数。这样相当于找一条权值最大的路径,因为无环了,所以这个可以通过先拓扑排序然后dp解决。这里重点说一下自己遇到的坑吧...
分类:其他好文   时间:2014-07-18 10:17:14    阅读次数:250
poj1458 dp入门
Common SubsequenceTime Limit:1000MSMemory Limit:10000KTotal Submissions:37551Accepted:15023DescriptionA subsequence of a given sequence is the given s...
分类:其他好文   时间:2014-07-18 10:02:42    阅读次数:169
CSU - 1022 菜鸟和大牛
DP简单题,以前用for循环写过,这次用状态递归写。感觉确实思路比以往清晰许多。 1 #include 2 #include 3 const int maxm=500+5,maxn=1000+5; 4 int d[maxm][maxn],a[maxm][maxn],n; 5 int trimax(i...
分类:其他好文   时间:2014-07-18 09:32:42    阅读次数:155
POJ - 3624 Charm Bracelet
01背包,DP简答题就行,要用滚动数组,不然内存要爆。for循环的方向很重要,虽然是简单题,但对理解DP帮助很大,听队长说要把每一个状态写出来,我试着写了一下,果然更容易理解了。 1 #include 2 #include 3 #define doumax(a,b) (a>b?a:b) 4 cons...
分类:其他好文   时间:2014-07-18 09:23:32    阅读次数:181
Codeforces 41D Pawn 简单dp
题目链接:点击打开链接 给定n*m 的矩阵 常数k 下面一个n*m的矩阵,每个位置由 0-9的一个整数表示 问: 从最后一行开始向上走到第一行使得路径上的和 % (k+1) == 0 每个格子只能向↖或↗走一步 求:最大的路径和 最后一行的哪个位置作为起点 从下到上的路径 思路: 简单dp #include #include #include #include #...
分类:其他好文   时间:2014-07-17 20:15:08    阅读次数:283
UVa 1401 Remember the Word
Trie+DP 大白书上的字典树训练题。 题意是说一个字符串可能有多少种小串组成。 例如 abcd  4 a b cd ab abcd=a+b+cd;abcd=ab+cd; 递推为:从最后一位往前,dp[i]=dp[i]+dp[i+ len[x]]  x为输入时的顺序,附加到节点中。是 i~strlen(S)的前缀。S[1,2,3,…,i,…len] ...
分类:其他好文   时间:2014-07-17 19:26:33    阅读次数:277
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!