拖欠很久的樹形dp問題終於補上了
在樹上做dp,圖論 + 資料結構 + dp了解一下
樣例畫成圖就是這樣,最多是5
一共有2 * n個狀態,每個狀態需要列舉這個點的所有兒子
時間複雜度近似o(n)
樹是特殊的圖,然後用鄰接表存
1 #include 2using
namespace
std;
3const
int n = 6010;4
intn;
5int
h[n], e[n], ne[n], idx;
6int
7int f[n][2];8
bool
has_fa[n];
9void add(int a, int
b) 14
void dfs(int
u) 22}23
intmain()
28 memset(h, -1, sizeof
h);29
for (int i = 0; i < n - 1; i++)
35int root = 1;36
while
(has_fa[root])
39dfs(root);
40 cout << max(f[root][0], f[root][1]) <
41return0;
42 }
樹形dp 沒有上司的舞會
題意 給定一棵樹,每個點有權值,對於每乙個點,它和它的父節點不能同時被選,求權值最大值。定義d p x 0 dp x 0 表示不選擇x號點時的最大值,dp x 1 d p x 1 表示選擇 x x 號點時的最大值。對於x role presentation style position relati...
樹形DP 沒有上司的舞會
ural大學有n名職員,編號為1 n。他們的關係就像一棵以校長為根的樹,父節點就是子節點的直接上司。每個職員有乙個快樂指數,用整數 hi 給出,其中 1 i n。現在要召開一場周年慶宴會,不過,沒有職員願意和直接上司一起參會。在滿足這個條件的前提下,主辦方希望邀請一部分職員參會,使得所有參會職員的快...
沒有上司的舞會 樹形DP
ural大學有n名職員,編號為1 n。他們的關係就像一棵以校長為根的樹,父節點就是子節點的直接上司。每個職員有乙個快樂指數,用整數 hi 給出,其中 1 i n。現在要召開一場周年慶宴會,不過,沒有職員願意和直接上司一起參會。在滿足這個條件的前提下,主辦方希望邀請一部分職員參會,使得所有參會職員的快...