摘要:
#树上背包 给一颗树,每个节点上有一个物品,每个体积为wi,价值为vi。 选了一个点必须选它的父亲。 问总体积不超过m的情况下总价值最大值 f[u][j]代表在以u为根的子树中,选了j的体积,能得到的最大价值 ·首先i一定要选 ·枚举给每个子树v分配多少体积k f[u][j]=max(f[u][j] 阅读全文
posted @ 2022-02-12 16:08
su-yichen
阅读(63)
评论(0)
推荐(0)
摘要:
#LCA ###倍增 f[i][j]代表i的2^j级父亲 f[i][j]=f[f[i][j-1]][j-1] 有了f数组,如何计算“u向上跳k步到达哪个点”? 对k作二进制分解,枚举所有二进制位。 如果第i位为1,那么令u=f[u][i] O(nlogn) 预处理 for(int i=1;i<=n; 阅读全文
posted @ 2022-02-12 14:12
su-yichen
阅读(48)
评论(0)
推荐(0)

浙公网安备 33010602011771号