题目大意:给定一个基环树林,每个点上有权值,要求选择一个权值和最大的点集,要求点集中的任意两个点之间不能直接相连
最大点独立集……考虑到n
对于每棵基环树,我们找到环上的一条边,设边上的两端点分别为u和v,f[i]为以i为根的子树在取i点的情况下的最大权值,g[i]为不取,于是我们有以下做法:
1.断掉这条边
2.u不取,v任意,我们以u为根跑一遍树形DP,取g[u]
3.v不取,u任意...
分类:
其他好文 时间:
2014-10-03 10:31:14
阅读次数:
192
很好也很烦的一个树形DP,昨天搞了一晚上是在想不出,后来没办法去看题解了,完事发现非常令人感动的是,我一开始设的状态都错了,然后就一直错了下去,还好及时的回头是岸了。 不说废话了,正题: 题目大意:给一棵树,n个节点,每个节点有一个权值,要求从节点1出发最多走k步,求所经过的点的权值和的最大...
分类:
移动开发 时间:
2014-10-03 02:32:53
阅读次数:
330
题意:给定一个n个点的图,这个图是一棵树,然后有些点建立了集市。并且没有集市的地方去集市一定是去最近的,如果距离相同,那么则去标号最小的。。现在你还能在建一个集市,问建完这个集市最多有多少个点来这里。。思路: 现对于每个点求该点到有标记点最近的距离,记录距离及其最近标号,可以用树形dp或者spfa....
分类:
其他好文 时间:
2014-10-02 23:39:53
阅读次数:
367
题意:
给定n个点的树,m个黑点
下面n-1行给出边和删除这条边的费用
下面m个黑点的点标[0,n-1]
删除一些边使得任意2个黑点都不连通。
问删除的最小花费。
思路:
树形dp
每个点有2个状态,成为黑点或白点。
若本身这个点就是黑点那么只有黑点一种状态。
否则可以认为是子树中某个黑点转移上来。
所以dp[i][0]是i点为黑点的状态。
#pragma comm...
分类:
其他好文 时间:
2014-10-02 20:59:23
阅读次数:
320
New Year Bonus Grant
Special JudgeTime Limit: 6000/3000MS (Java/Others)Memory
Limit: 128000/64000KB (Java/Others)
SubmitStatisticNext
Problem
Problem Description
All programmers ...
分类:
其他好文 时间:
2014-10-02 10:21:22
阅读次数:
168
题意:
long long ans = 0;
for(int i = 1; i
for(int j = i+1; j
ans += F(i,j);
F(i,j)表示i点到j点路径上所有的点权和。
若i->j路径上存在2条相邻边边权相同则 F(i,j) = 0
问:ans的值。
int乘法爆掉了我也醉了。。。
思路:
和网上的统计边方法不同,这里是用统计点出现...
分类:
其他好文 时间:
2014-10-01 23:37:11
阅读次数:
243
题目:给你一棵树,找到最小的顶点集合,使得所有的边至少有一个顶点在这个集合中。
分析:树形dp,图论,最小顶点覆盖。
方案1:树形dp,分别记录每个节点取和不取的最优解f(k,0)与f(k,1);
每个节点的状态取决于子树,子树的根都不选,则他必选;否则取最小;
...
分类:
其他好文 时间:
2014-10-01 20:05:01
阅读次数:
174
http://poj.org/problem?id=3107树形dp 1 #include 2 #include 3 #include 4 #define maxn 55000 5 using namespace std; 6 const int inf=1<<30; 7 8 int hea...
分类:
其他好文 时间:
2014-09-27 20:53:20
阅读次数:
202
树形DP经典应用的拓展,2013年南美赛区区域赛现场赛题目。...
分类:
其他好文 时间:
2014-09-27 12:04:19
阅读次数:
280
#include
#include
using namespace std;
#define ABANDON 0
#define GET 1
deque graph[2010];
int DP[2010][2];
void DFS( int start, int parent ){
DP[start][ABANDON] = 0;
DP[start][GET]...
分类:
其他好文 时间:
2014-09-26 20:53:58
阅读次数:
144