随笔分类 - 动态dp
摘要:题目大意:给你一棵 $n$个点 以 $1$为根 的树,每个点有$ 0,1,2 $三种颜色之一,初始时整棵树的颜色均为 $0$。 $m$ 次操作, 每次操作形如: 1 x y c : 将 $x$到$y$的路径上的点全部改为颜色$C$ 2 x : 询问 $x$ 所在的同色连通块大小 数据范围:$n,m≤
阅读全文
摘要:不难发现此题是一道动态$dp$题 考虑此题没有修改怎么做,令$f[i]$表示让以$i$为根的子树被覆盖的最小花费,不难推出$f[i]=min(\sum_{j∈son[i]} f[j],val[i])$。 依然采用树链剖分+线段树维护每一条链。线段树上每个节点维护$val1$和$val2$两个值。 其
阅读全文
摘要:动态$dp$好题 考虑用树链剖分将整棵树剖成若干条链。 设x的重儿子为$son[x]$,设$x$所在链链头为$top[x]$ 对于重链上的每个节点(不妨设该节点编号为$x$)令$f[x]$表示以$x$为根的子树内(除以$son[x]$为根的子树),包含节点$x$的联通块的最大权值和。 我们求出一条重
阅读全文
摘要:此题场上打了一个正确的$44pts$,接着看错题疯狂$rush$“正确”的$44pts$,后来没$rush$完没将之前的代码$copy$回去,直接变零分了。。。。。 这一题我们显然有一种$O(nm)$的做法 令$f[u][0]$表示在以$u$为根的子树内部署军队,且$u$不部署军队的最小代价。 令$
阅读全文
摘要:题目大意:给你一颗$n$个点的树,点有点权,有$m$次操作,每次操作给定$x$,$y$,表示修改点$x$的权值为$y$。 你需要在每次操作之后求出这棵树的最大权独立集的权值大小。 数据范围:$n,m≤1e5$ 我们显然可以得出一个$O(nm)$的暴力做法,每次修改完后$dp$一次,然而这个显然会超时
阅读全文

浙公网安备 33010602011771号