题意:给出一颗树,树上每个点都有一个权值,求出最大权独立集。
思路:和前面的和一样,我们首先将无根树转化成有根树。
设dp[u][0]为不选择节点u,以u为根的子树的最大权独立集。dp[u][1]为选择节点u,得到的以u为根的子树的最大独立集。
因为对于节点u,我们有可以选也可以不选。
所以:
1.选择节点u后,u的所有儿子是不能选的,则:
dp[u][1]=value[u]+∑ v∈s
题意:给出一颗树,树上每个点都有一个权值,求出最大权独立集。
思路:和前面的和一样,我们首先将无根树转化成有根树。
设dp[u][0]为不选择节点u,以u为根的子树的最大权独立集。dp[u][1]为选择节点u,得到的以u为根的子树的最大独立集。
因为对于节点u,我们有可以选也可以不选。
所以:
1.选择节点u后,u的所有儿子是不能选的,则: