首页 > 其他分享 >P8294 [省选联考 2022] 最大权独立集问题

P8294 [省选联考 2022] 最大权独立集问题

时间:2022-12-24 09:46:47浏览次数:48  
标签:P8294 子树内 val 省选 son dep LCA 联考 dp

题解

可以发现对于一个子树,假设移出的点为 \(u\) ,移入的点到 \(v\) ,那么这棵子树的根一定是 \(LCA(u,v)\) .于是可以设 \(dp_{u,v}\) 表示在以 \(LCA(u,v)\) 为根的子树中,移出的点为 \(u\) ,移入的点到 \(v\) ,且不算移入点的代价的最小代价.

设 \(r\) 为 \(LCA(u,v)\) , \(son\) 为 \(r\) 的儿子.

根据 \(r\) 的儿子个数 \(deg\) 转移.

  • \(deg=0\) : \(dp_{r,r}=val_r\)

  • \(deg=1\):

    • 若 \(u=r\) : \(dp_{u,v}=\min\{dp_{w,v}+val_u| LCA(w,v)=son\}\)
    • 若 \(v=r\) : \(dp_{u,v}=\min\{dp_{u,w}+val_u+val_v(dep_w-dep_v)|LCA(u,w)=son\}\)
  • \(deg=2\) :

    • 若 \(u=r\) :

      设 \(son\) 为 \(r\) 靠近 \(v\) 一侧的儿子, \(son'\) 为 \(r\) 另一侧的儿子.

      先交换 \(u\) 和它的父亲,再交换 \(u\) 和 \(son\), 最后交换 \(u\) 和 \(son'\).

      设 \(son\) 子树内传上来的点为 \(w\) ,它传到 \(son'\) 子树内的 \(y\) , \(son'\) 子树内传上来的点为 \(x\).

      \(dp_{u,v}=\min\{dp_{w,v}+dp_{x,y}+val_u+val_w(dep_y-dep_u)|LCA(w,v)=son,LCA(x,y)=son'\}\)

    • 若 \(v=r\) :

      设 \(son\) 为 \(r\) 靠近 \(u\) 一侧的儿子, \(son'\) 为 \(r\) 另一侧的儿子.

      先交换 \(son'\) 和 \(v\) ,再交换 \(son\) 和 \(v\) ,最后交换 \(v\) 和它的父亲.

      设 \(son'\) 子树内传上来的点为 \(w\) , 它传到 \(son\) 子树内的 \(y\) , \(r\) 从 \(v\) 移到 \(son'\) 子树的 \(x\).

      \(dp_{u,v}=\min\{dp_{w,x}+dp_{u,y}+val_w(dep_y-dep_v)+val_v(dep_x-dep_v)+val_u|LCA(w,x)=son',LCA(u,y)=son\}\)

    • \(v\neq r\) :

      设 \(son\) 为 \(r\) 靠近 \(u\) 一侧的儿子, \(son'\) 为 \(r\) 靠近 \(v\) 一侧的儿子.

      先交换 \(son\) 和 \(r\) ,再交换 \(r\) 和它的父亲,最后交换 \(son'\) 和 \(r\).

      设\(x\) 为 \(r\) 移到 \(son\) 子树的 \(x\), \(y\) 为 \(son'\) 子树传上来的点为 \(y\).

      \(dp_{u,v}=\min\{dp_{u,x}+dp_{y,v}+val_r(dep_x-dep_r)+val_u|LCA(u,x)=son,LCA(y,v)=son'\}\)

标签:P8294,子树内,val,省选,son,dep,LCA,联考,dp
From: https://www.cnblogs.com/yanchengzhi/p/17002041.html

相关文章

  • P8290 [省选联考 2022] 填树
    https://www.luogu.com.cn/problem/P8290题解记\(P(l,r)\)表示最小值为\(l\)(至少\(1\)个),其它数在\([l,r]\)的第一问的答案,\(Q(l,r)\)表示最小值为\(l\)(至少\(1\)个)......
  • P8293 [省选联考 2022] 序列变换
    https://www.luogu.com.cn/problem/P8293题解题意转化:将括号序列建成一棵树,操作1相当于把一个点和它的儿子都挂到同一深度的另一个点下面,操作2相当于表示同一深度的......
  • P8292 [省选联考 2022] 卡牌
    https://www.luogu.com.cn/problem/P8292题解先把小于等于\(\sqrt{2000}\)的质数打一个表,发现只有\(14\)个,其中第\(14\)个是\(43\).令前\(14\)个质数为小质数,其它的......
  • 省选11. 字符串
    P3426[POI2005]SZA-Template考虑dp,设\(f(i)\)表示前\(i\)字符所需要的最小印章。\(f(i)\)要么等于\(i\),要么等于\(f(nxt(i))\)。如果存在\(j\geqn-nxt(i)\),......
  • 省选知识点做题记录
    luogu[IOI2014]Wall砖墙题解可以转化为区间取\(min\)和区间取\(max\).规定一下下传标记的顺序推一下式子就行了.[NOIP2013提高组]华容道题解先想到了朴素的......
  • 省选07. 多项式
    P3338[ZJOI2014]力\[\begin{aligned}E_i&=\sum_{j=1}^{i-1}\frac{q_j}{(i-j)^2}-\sum_{j=i+1}^n\frac{q_j}{(i-j)^2}\end{aligned}\]设\(f(x)=q_x\),\(g(x)=x^2\),\(h(......
  • 省选08. 组合计数
    P4091[HEOI2016/TJOI2016]求和有一个重要的通项公式\[\begin{Bmatrix}n\\m\end{Bmatrix}=\sum_{i=0}^{m}\frac{i^n(-1)^{m-i}}{i!(m-i)!}\]\[ans=\sum_{i=0}^{n}\sum......
  • 省选09. 图论
    P2469[SDOI2010]星际竞速可以发现,一个点要么是起点,要么从其它点进入,且每个点最多只会进入一次,出去一次。因此,可以用流量限制每个点被访问一次,用费用计算代价,问题就转化......
  • 省选10. 动态规划
    P3736[HAOI2016]字符合并考虑区间dp+状压dp。设\(dp(l,r,s)\)表示\([l,r]\)合并成\(s\)的最大分数。如果\(r-l+1=len\),那么合并后的长度一定是\(len\bmod{......
  • 省选05. 线性代数
    P6772[NOI2020]美食家先假设没有美食节,容易得到一个矩阵优化的dp。加上美食节过后分成\(k\)段考虑,每段分别矩阵快速幂,时间复杂度为\(O((5n)^3k\logT)\)。这并不......