树形DP
Dilly__dally
这个作者很懒,什么都没留下…
展开
-
HDU1520 Anniversary party(树形DP)
题意:某公司要举办一次晚会,但是为了使得晚会的气氛更加活跃,每个参加晚会的人都不希望在晚会中见到他的直接上司,现在已知每个人的活跃指数和上司关系(当然不可能存在环),求邀请哪些人(多少人)来能使得晚会的总活跃指数最大。思路:当i来时,dp[i][1]+=dp[j][0] (j为i的下属)当i不来时,dp[i][0]+=max(dp[j][0],dp[j][1])#inclu...原创 2018-08-30 22:23:35 · 86 阅读 · 0 评论 -
UVA 1218(树形DP)
题意:有n台机器形成树状结构。要求在其中一些机器上安装服务器,使得每台不是服务器的计算机恰好和一台服务器计算机相邻。求服务器的最少数量。思路:dp[u][0]表示u是服务器,u的孩子是或不是都可以。dp[u][1]表示u不是,u的父亲是,所以u的孩子都不是。dp[u][2]表示u不是,u的父亲也不是,所以u的孩子有且仅有一个是服务器。dp[u][0]=1+sum(min(dp[v][1],...原创 2018-09-01 19:38:33 · 207 阅读 · 0 评论 -
【模板】树的重心(POJ1665)
题意:找重心和最大子树的节点数。#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>#include <vector>#include <iostream>using namespace std;int ...原创 2018-09-01 23:57:20 · 198 阅读 · 0 评论 -
POJ3107(树的重心)
题意:给一棵树,求出树的重心,树的重心为:删除该点之后,使得形成的多棵树中节点数最大值最小。如果有多个,那么按编号大小依次输出。思路:树形DP求重心,用个数组存储,然后排序注意:开始用vector写的超时,,改成链式前向星AC了#define _CRT_SECURE_NO_WARNINGS#include <cstdio>#include <cstdlib&g...原创 2018-09-02 00:42:54 · 333 阅读 · 0 评论