码迷,mamicode.com
首页 >  
搜索关键字:动态规划    ( 6061个结果
BZOJ 1025 SCOI2009 游戏 动态规划
题目大意:给定n,定义一个置换的排数为1~n的循环经过这个置换最少T次(T>0)可以回到原来的序列 求所有可能的排数的数量 将一个置换分解为一些循环,那么这个置换的排数就是这些循环的长度的最小公倍数 于是对于一个数,我们验证这个数是否是排数的方式就是将这个数分解质因数,令x=p1^a1*p2^a2*...*pk^ak,若p1^a1+p2^a2+...+pk^ak 分组背包即可 令f[i][j...
分类:其他好文   时间:2014-10-28 12:18:49    阅读次数:236
【动态规划】【零一背包】CODEVS 1014 装箱问题 2001年NOIP全国联赛普及组
1 #include 2 #include 3 using namespace std; 4 int n,m,w[31],f[30001]; 5 int main() 6 { 7 scanf("%d%d",&m,&n); 8 for(int i=1;i=w[i];v--)11 ...
分类:其他好文   时间:2014-10-28 11:48:30    阅读次数:137
【动态规划】【记忆化搜索】CODEVS 1010 过河卒 2002年NOIP全国联赛普及组
f(i,j)=f(i-1,j)+f(i,j-1),显然可以暴力递归求解,但是很多重复的状态,所以可以记忆下来。注意障碍点和边界的特判。 1 #include 2 #include 3 using namespace std; 4 int x1,y1,x2,y2,dp[25][25]; 5 bool ...
分类:其他好文   时间:2014-10-28 11:41:34    阅读次数:179
九度 题目1422:Closest Number
九度 题目1422:Closest Number 这个题目一看,10s,刚上来我就用暴力的方式去求解,果然超时了,汗。。。 后来想想,暴力的方式上可以进行剪枝。 1:我不用计算左和右哪个最小,我直接按照距离来,直接计算就好了,但是需要优先比较左边的。 2:如果左边或右边不存在了,那就直接在另一边找就可以了。 3:需要先排除最小值的情况,这个会方便后面的代码,如果不进行最小值判断,在计算左右满足数的时候还需要考虑输出0的情况,比较麻烦 总是剪枝之后比他们动态规划的结果还要好啦...
分类:其他好文   时间:2014-10-28 10:22:16    阅读次数:179
最大子段和 股票最大买入卖出方案
[-2,2,3,-1]的最大字段和是[2,3]/*动态规划算法:**b[j]=max{a[i]+ +a[j]},10时b[j]=b[j-1]+a[j],否则b[j]=a[j]。故b[j]的动态规划递归式为:**b[j]=max(b[j-1]+a[j],a[j]),10) b+=...
分类:其他好文   时间:2014-10-28 02:04:08    阅读次数:194
[HDU 3535] AreYouBusy (动态规划 混合背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3535题意:有n个任务集合,需要在T个时间单位内完成。每个任务集合有属性,属性为0的代表至少要完成1个,属性为1的为至多完成1个,属性为2的为任意完成。每个任务做完后都有个价值,问在T个时间单位内完成n个...
分类:其他好文   时间:2014-10-28 00:43:00    阅读次数:198
动态规划法——最长公共子序列问题
本本题中,我要求解l[7,6],那么我先找到表中第7行第6列的标记,发现是个向上的箭头,说明了l[7,6]=l[6,6], 此时我又找到l[6.,6],发现标记的是个左上角的箭头,说明此时的A包含在解数组里面,将它加入到解数组中,之后将问题规模缩小到了l[5,5],再看l[5,5]….. 在我查找的过程中,随着l[I,j]中i和j的变化,这个问题的规模在逐渐缩小,直至我们遇到l[I,j]=0时停止搜索。 再说我们构造上表的过程,构造的时候,我们是从底到顶构造的,但是在...
分类:其他好文   时间:2014-10-27 23:05:04    阅读次数:257
【动态规划】【记忆化搜索】CODEVS 最小和 CodeVS原创
f(l,r,i)表示第i段截第l位到第r位时,当前已经得到的价格最小值,可以很显然地发现,这个是没有后效性的,因为对之后截得的段都不造成影响。注意水彩笔数=1的特判。递归枚举当前段的r求解(∵l是前一段的r+1),因为很多状态重复,所以可以记忆化。 1 #include 2 #include 3 #...
分类:其他好文   时间:2014-10-27 22:39:42    阅读次数:251
【动态规划】【记忆化搜索】CODEVS 3409 搬运礼物 CodeVS原创
考虑暴力递归求解的情况:f(i)=min(a(i),f(i-1),f(i-2),...,f(1))由于只要参数相同,f()函数的返回值是一样的,因此导致了大量的重复计算,所以我们可以记忆下来。 1 #include 2 #include 3 #include 4 using namespace st...
分类:其他好文   时间:2014-10-27 21:03:40    阅读次数:180
POJ 1163 The Triangle(经典问题教你彻底理解动归思想)
The Triangle Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 38195   Accepted: 22946 Description 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 (Figu...
分类:其他好文   时间:2014-10-27 19:37:23    阅读次数:189
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!