首页 > 其他分享 >ABC298Ex(2)

ABC298Ex(2)

时间:2024-08-22 17:26:56浏览次数:5  
标签:limits text sum subtree alpha ABC298Ex rightarrow

多次询问 \(L,R\),求 \(\sum\limits_{i}\min(d(i,L),d(i,R))\)。

不失一般性的令 \(dep_L\ge dep_R\)。

考虑 \(i\) 到 \(L/R\) 的路径是怎样的。一定是 \(i\) 到 \(L\rightarrow\) 上的某一点 \(x\) 再到 \(L/R\)。

如果按照每个点到达 \(L/R\) 对其进行染色,则每种颜色都只有一个联通块,换句话说,颜色是树的一个划分。

考虑 \(L\rightarrow R\) 路径上的染色情况,一定有一个阈值 \(m\),满足路径上到 \(L\) 距离不超过 \(m\) 的点到达 \(L\),其余到达 \(R\)。利用倍增求出 \(L\) 的树上 \(m\) 级祖先 \(x\),设 \(\operatorname{lca}(L,R)=k\),则 \(x\) 必然位于 \(L\rightarrow k\) 的路径上(保证了 \(dep_L\ge dep_R\))。不难发现所有位于 \(x\) 子树内的点都会走到 \(L\),其余都会走到 \(R\)。

因此答案就是 \(\sum\limits_{i\in\text{subtree}_x}d(i,L)+\sum\limits_{i\notin\text{subtree}_x}d(i,R)\)。

\(i\notin\text{subtree}_x\) 并不好处理,将答案改写为 \(\sum\limits_{i\in\text{subtree}_x}d(i,L)+\sum\limits_{i}d(i,R)-\sum\limits_{i\in\text{subtree}_x}d(i,R)\)。

此时式子已经相较于一开始变得更好处理,只需要求出一棵子树的所有点到子树内某点的距离和即可。即 \(\sum\limits_{i\in\text{subtree}_x}d(1,i)+d(1,p)-d(1,\operatorname{lca}(i,p))\)。

\(\sum\limits_{i\in\text{subtree}_x}d(1,i)+d(1,p)\) 是好求的,考虑怎么求 \(\sum\limits_{i\in\text{subtree}_x}d(1,\operatorname{lca}(i,p))\)。

对 \(\operatorname{lca}(i,p)\) 拆贡献。设 \(p\rightarrow x\) 经过的点为 \(\{\alpha_z\}\)。则为 \(\sum\limits_{1\le j\le z}d(1,\alpha_j)\times(s_{\alpha_j}-s_{\alpha_{j-1}})\)。

其中 \(s_i\) 代表 \(i\) 的子树大小,\(s_{\alpha_0}=0\)。

标签:limits,text,sum,subtree,alpha,ABC298Ex,rightarrow
From: https://www.cnblogs.com/BYR-KKK/p/18374382

相关文章

  • ABC298Ex
    水紫。多次询问\(L,R\),求出\(\sum\limits_{i=1}^n\min(d(i,L),d(i,R))\)。不失一般性的令\(del_L\ledel_R\)。分几部分考虑。\(L\)或\(R\)的子树中。预处理\(f_i\)代表\(i\)的子树中的点到\(i\)的距离和,\(s_i\)代表\(i\)的子树大小。转移方程:\(f_i=\su......
  • 题解:AT_abc298_h [ABC298Ex] Sum of Min of Length
    分析模拟赛签到题。考虑分讨。分两种情况:\(L=R\)。\(L\neR\)。对于第\(1\)种情况,用换根DP求一个\(i\)为根时所有点的深度和就行。对于第\(2\)种情况,钦定$dep_R\gedep_L$。很显然,\(R\)为根的子树中所有点都是离\(R\)更近。假设在\(L\)到\(R\)的路径......
  • 【思维】【DP】ABC298Ex Sum of Min of Length 题解
    ABC298Ex简单题。因为有\(\min\)不好做,容易想到讨论\(d(i,L)\)和\(d(i,R)\)的大小。令\(p=\text{LCA}(L,R)\),\(dep_L>dep_R,dist=dep_L+dep_R-2\timesdep_p\),\(now\)满足\(dep_L-dep_{now}=\lfloor\dfrac{dist}{2}\rfloor\)则\(L\)一定在......