码迷,mamicode.com
首页 >  
搜索关键字:dp    ( 24588个结果
leetcode第一刷_Unique Paths II
接着上面的问题,如果这个矩阵中有阻塞的障碍,就不能用前面的那种组合数的方法了,因为很多位置实际上是没有路的嘛。 剩下的合理解法只有dp了。跟那个求最小和的非常像,从右下角往前推算,对于一个位置(i, j),它的走法应该是(i+1, j)和(i, j+1)走法的和。对于边界条件还是有一些特殊,最后一行,从右往左,如果是0的话没有问题,等于右侧走法的个数,一旦遇到一个1,那么它以及它左边的走法都必须...
分类:其他好文   时间:2014-05-14 01:00:13    阅读次数:305
POJ 2992 Divisors 求组合数因子个数
题目来源:POJ 2992 Divisors 题意:。。。 思路:素数分解的唯一性 一个数可以被分解成若干素数相乘 p1^x1*p2^x2*...*pn^xn 根据乘法原理 因子数为 (x1+1)*(x2+1)*...*(xn+1) 不能直接求出组合数 会溢出 也不能把每个乘的数分解因子 这样会超时 C(N,M)=N!/(M!*(N-M)!) 另dp[i][j] 代表为i的阶乘中j因子...
分类:其他好文   时间:2014-05-13 09:28:07    阅读次数:207
poj2282(数位dp)
题意:计算a-b中各个数字出现的个数; 解法:数位dp(思想都是先算1-b的个数,然后减掉1-a中的个数),1-9数字的计算和前边计算1的那一篇数位dp差不多,计算0时候要加一维表示前缀是否全是0; 代码:/****************************************************** * author:xiefubao *****************...
分类:其他好文   时间:2014-05-12 23:51:12    阅读次数:470
nyoj10 滑雪
dp[ i][j]=max(四个方向点)+1; 四个方向上的点应该存在,且大于i,j,表示以i,j开始的点最长路径,递归的结束条件不用判断,因为 dp[][]最大数位置肯定 直接结束,随后次大值肯定能结束,以此类推,所以可以执行,但自下而上动态规划不好写。因为要确定这些数的大小,麻烦。 #inclu...
分类:其他好文   时间:2014-05-12 21:21:23    阅读次数:323
HDU - 3401 Trade
题意:让你炒股票,每天都有买进的额度和价格以及卖出的额度和价格,并规定时间和最多的持有股票是多少,而且买卖操作要隔w+1天求最高的利润 思路:显然分三种情况:不买不卖,买,卖,设dp[i][j]表示第i天持有j股票的最高利润 如果不买不卖的话就是:dp[i][j]=dp[i-1][j]                                买: dp[i][j]=max(dp[i][...
分类:其他好文   时间:2014-05-11 21:18:05    阅读次数:323
ZOJ 2109 FatMouse' Trade (背包 dp + 贪心)
链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1109 FatMouse prepared M pounds of cat food, ready to trade with the cats guarding the warehouse containing his favorite food, JavaBean...
分类:其他好文   时间:2014-05-11 20:57:36    阅读次数:400
数位dp(求1-n中数字1出现的个数)
题意:求1-n的n个数字中1出现的个数。 解法:数位dp,dp[pre][now][equa] 记录着第pre位为now,equa表示前边是否有降数字(即后边可不可以随意取,true为没降,true为已降);常规的记忆化搜索 代码:/****************************************************** * author:xiefubao ...
分类:其他好文   时间:2014-05-11 20:48:20    阅读次数:279
UVA 10497 - Sweet Child Makes Trouble(DP+高精度)
题目链接:10497 - Sweet Child Makes Trouble 题意:n个物品,原来物品属于一个地方,现在要把物品重新放回去,问能放几种使得每个物品都与原来位置不同 思路:递推,一开始随便搞了个二维状态,dp[i][j]表示i个物品,有j个位置不同,那么dp[n][n]就是答案,递推式为: dp[i][j] = 1 (j == 0) dp[i][j] = (j - 1) * ...
分类:其他好文   时间:2014-05-11 20:25:48    阅读次数:433
UVA 580 - Critical Mass(DP)
题目链接:580 - Critical Mass 题意:一个栈,里面可以放L和U,有三个连续的U就是不安全的,问共有几种不安全的情况 思路:dp,dp[i][j][k],表示放到第i个,最后两个状态为j,k表示有没有出现不安全。然后去记忆化搜索一下就可以了 然后还有一种做法是,先考虑安全的情况,在用总情况(1 不过这题都没给数据范围,不过数据其实并不大,不然计算的时候种数一下就会超过范围了...
分类:其他好文   时间:2014-05-11 20:10:18    阅读次数:372
Wikioi 1025 01背包变形
这题多加了菜品必选编号,所以刚开始不知道怎么写,原来就把必选的处理下就行了,因为有重复,但是相同的价值与价格都一样,所以这里就直接挑出来就行了。 把不是必选的在里面用dp即可,dp之前也要把重复的舍去。 因为总价格容量为浮点数,所以先乘以10变成整数就可以用01背包了。 #include #include #include #include #include #include #...
分类:其他好文   时间:2014-05-11 03:48:50    阅读次数:382
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!