码迷,mamicode.com
首页 >  
搜索关键字:树形背包    ( 98个结果
HDU 5378 Leader in Tree Land 树形背包
链接 题解转自: 题意: 给定n k 下面n-1行给出一棵树。 把数字1-n填到树的节点上。 填完后计算leader节点个数,若这个点是leader,则这个点上填的数>这个点的子树上填的数 问:恰好有k个leader节点的 填涂方案数. 思路: dp[i][j]表示以i点为根的子树 有恰好j个leader的方案数。 如果u 是叶子节点则 dp[u][0] = 0, dp...
分类:其他好文   时间:2015-08-12 16:54:16    阅读次数:133
hdu 1011 树形背包
很显然是树形背包,注意m为0的情况。 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int N = 101; 7 int head[N]; 8 int bn[N]; 9 int value[N];10 in...
分类:其他好文   时间:2015-08-11 11:55:39    阅读次数:79
UVa 1407 树形背包 Caves
这道题可以和POJ 2486 树形背包DP Apple Tree比较着来做。参考题解 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int maxn = 50...
分类:其他好文   时间:2015-08-04 10:56:27    阅读次数:169
HDU 4276-The Ghost Blows Light(树状背包)
题意:n个房间,每个有一定的钱,一个房间到另一个房间花费一定的时间,给你房间连接树,求在t时间内到达房间m能得到的最大钱数(从房间1(根)出发)分析:该题关键是最后要到达m,没有这个条件,就是基础的树形背包,哎,一开始没思路,放了一段时间,看看题解才明白,该题突破口,就是,你先想怎么判断不能到到达m...
分类:其他好文   时间:2015-08-03 12:50:01    阅读次数:105
HDU ACM 1011 Starship Troopers->树形背包(树上的背包)
题意:n个洞组成一棵树,有m个士兵,从1号洞开始攻打,每个洞有a个bug和b的价值。一个士兵可以打20个bug,为了拿到这个洞的价值b必须留下k个士兵消灭这个洞的所有bug(k*20>=bug的数量,且留下的士兵不可以再去攻打其他的洞,且必须攻打了前面的洞才可以攻打后面的洞)。问花费这m个士兵可以得到的最大价值是多少。  dp方程:dp[i][j]=max(dp[i][j],dp[i][j-k]...
分类:其他好文   时间:2015-06-07 09:35:45    阅读次数:241
hdu1561(树形背包)
给定n,m表示n个城堡,我们可以选择攻占m个城堡。要使得价值最大接下来n行 a b, 第i行的a b,表示攻占第i个城堡的价值为b,但需要先攻占第a个城堡如果有多个a=0的点,那么就不是一棵树,但是我们可以建立一个根结点0,让根结点指向那些a=0的点, 同时m++,因为更结点必须被占据,占据一个结....
分类:其他好文   时间:2015-04-18 19:12:18    阅读次数:146
hdu1011(树形背包)
hdu1011http://acm.hdu.edu.cn/showproblem.php?pid=1011给定n个洞穴和m个士兵(每个士兵能消灭20个bugs)然后给定每个洞穴的bugs数量(背包的费用)和brain的数量(背包的价值)然后给定n-1条边,使得n个洞穴形成一课树问能取得的brain数...
分类:其他好文   时间:2015-04-18 15:57:29    阅读次数:110
poj 1155 TELE(树形泛化背包dp)
/*     这道题还不错,自己想出了思路过得也比较快,也得出了一个小经验,以后写这种题先把关键部分伪代码写出来这样会快很多而且     不那么容易出错,省去很多的调试时间     这道题就是转化为一道树形背包问题。首先把需要付的钱转为负数,对每个叶子结点增加一个子节点表示赚的钱,为正数.     然后记录下当前结点的所有可能的用户数目所花费的钱.所以问题就转化为一道简单的树形dp问题。最...
分类:其他好文   时间:2015-04-06 08:50:07    阅读次数:164
UVALive 4015 Caves 树形背包
题目链接:点击打开链接 题意: 给定n个点的有根树(0为根), 下面给出边和边权 一个整数q表示q个询问 每个询问一个数字x ,表示有一个人从根开始走,行走距离不超过x且使得走过不相同的点最多。 问最多能走多少个点。 思路: dp[i][j][0]表示以i为根的子树,以i为起点走了j个不同点且回到i的最小花费。 dp[i][j][1]表示不需要回到i的最小花费。 转移的时候就是...
分类:其他好文   时间:2015-02-02 19:56:18    阅读次数:239
【East!模拟赛】【Round1】【BZOJ1017】魔兽地图Dotr 树形DP
题意不多说。 曰:     呃,首先显然这是一个树形DP。     然后我不会什么高大上的算法,我只能提供一种非常慢,但是能在BZ切的算法(因为是总时限并且还有O2)。 题解:     不需要新建树,这个树就行。     首先这道题一眼就能想到树形背包。。但是树形背包怎么做呢?     因为需要合成,所以这里的状态F[i][j][k]并不是i节点有j个花费为k时的最大收益,而是i节点...
分类:其他好文   时间:2014-11-22 12:08:48    阅读次数:215
98条   上一页 1 ... 7 8 9 10 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!