CF1292C Xenon's Attack on the Gangs
CF1292C :
首先可知答案是仅由一条链贡献产生。
考虑枚举一条链。
那么当前边 \(\{u,v\}\) 若放数值为 \(x\) ,其对于答案贡献可记为 \(siz_u*siz_v\) 。因为对于每个以凑好的路径,加入数 \(x\) 可使边两边子树任意选两点的路径的值加 \(1\) 。
考虑跳链,记数组 \(fa[u][v]\) 为以结点 \(u\) 为根的树中,结点 \(v\) 的父亲节点。
那么可得出转移方程为:
\(f_{u,v}=\text{max}(f[u][fa[u][v]],f[v][fa[v][u]])+siz[u][v]*siz[v][u]\)
那么只需枚举每一条链,计算答案即可。

浙公网安备 33010602011771号