随笔分类 -  dp -- 树形dp

摘要:https://www.acwing.com/problem/content/1079/ 树形dp + 状态机 此题于战略游戏类似, 但是由于要看的是节点而不是边, 所有两个状态不够. 状态表示 \(f[i][0]:点i被父节点看到\) \(f[i][1]:点i被子节点看到\) \(f[i][2]: 阅读全文
posted @ 2021-02-01 21:16 phr2000 阅读(52) 评论(0) 推荐(0)
摘要:https://www.acwing.com/problem/content/1077/ \(对任意的数,它的约数和是不变的, 所有可以连\ sum[i]\rightarrow i\ 的边构成树\) \(最后的形式为\mathbf{森林}, 所以等价于对每一棵树上的节点求\mathbf{最长路径}\ 阅读全文
posted @ 2021-01-31 00:13 phr2000 阅读(92) 评论(0) 推荐(0)
摘要:https://www.acwing.com/problem/content/1074/ $对于每个节点, 得到其最长路径和次长路径\ d_1 和\ d_2$​ \(最长路径\ d = d_1 + d_2\) #include <bits/stdc++.h> using namespace std; 阅读全文
posted @ 2021-01-30 23:22 phr2000 阅读(83) 评论(0) 推荐(0)
摘要:链接 : https://www.acwing.com/problem/content/287/ 状态表示 \(f[u][0] : 表示不要 u 点的最大价值\) \(f[u][1] : 表示要 u 点的最大价值\) 状态计算 $ \begin f[u][1] &+= \sum f[j][u]\ f 阅读全文
posted @ 2021-01-30 23:10 phr2000 阅读(39) 评论(0) 推荐(0)