当前位置: 首页 > news >正文

part 4

这场感觉就T4比较有意义

  • LCA 结论:三个点两两求 LCA,lca 的编号异或起来是答案(到三个点的距离总和最小的点),且该答案是以其中一点为根时另外两点的 LCA。
  • 所以我们可以得到结论 点 \(p\) 和点 \(q\)\(x\) 为根的 lca 深度是 \(dlca_{p,q} \oplus dlca_{p,x} \oplus dlca_{q,x}\) 其中 \(dlca\) 表示两个点以 1 为根的 lca 深度
  • 接下来我们考虑刻画 以 \(x\) 为根时 \(y\) 子树内的所有点
    • \(x = y\) 则为全树(以 1 为根的子树)
    • \(x \neq y\)\(x\) 不在 \(y\) 的子树内,则为以 \(y\) 为根的子树
    • \(x \neq y\)\(x\)\(y\) 的子树内,则为全树扣掉 \(y\) 的某个儿子(\(x\) 的祖先)的子树
  • 所以我们现在只需要解决以 \(y\) 为根的子树的每个点和 \(z\) 或者 以 \(z\) 为根的子树的每个点在以 \(x\) 为根的情况下的 \(lca\) 的深度的异或和即可
  • 再根据上面推出来的结论所以 \(x\) 的换根对于我们来说已经没有了影响
    • 因为我们可以分别求出异或和再把它们异或起来
  • 我们定义 \(x \oplus y\) 表示 \(x\) 连续异或 \(y\) 次。
  • 我们先来考虑以 \(y\) 为根的子树的每个点和 \(z\) 在以 1 为根的情况下的 \(lca\) 深度的异或和
    • \(z\) 不在 \(y\) 子树内或恰好等于 \(y\) 那么答案就是 \(dlca_{y,z} \oplus siz_y\)
    • 否则假设 \(z = a_0 -> a_1 -> a_2 -> …… -> a_{k-1} -> a_k = y\) 那么答案就是 \((d_z \oplus siz_z) \oplus \oplus_{i=1}^{k}(d_{a_i} \oplus (siz_{a_i} - siz_{a_{i-1}}))\) 其实就是 \((d_y \oplus siz_y) \oplus \oplus_{i=0}^{k-1}((d_{a_i} \oplus d_{a_{i+1}} \oplus siz_{a_i}))\) 后面这个很显然是一个前缀和的形式故可以预处理快速计算
  • 接着我们考虑以 \(y\) 为根的子树的每个点和 以 \(z\) 为根的子树的每个点在以 1 为根的情况下的 \(lca\) 的异或和
    • 若它们互不相交则为 \(dlca_{y,z} \oplus (siz_y \cdot siz_z)\)
    • 不妨设 \(z\)\(y\) 的子树内,若在 \(y\) 子树内选的点不在 \(z\) 子树内则和上面的情况完全相同,否则我们发现在 \(z\) 子树内选两个点求 \(lca\) 深度,只有选的两个点相同时才不会被抵消到因为如果存在 \((u,v)\) 的话一定会存在 \((v,u)\) 所以我们可以预处理出每个子树内所有点的深度的异或和即可
http://www.zskr.cn/news/2667.html

相关文章:

  • systemctl的service脚本写法
  • 9月份美联储的降息利好
  • 口胡记录
  • Day16内存分析及初始化
  • Vue3项目中集成AI对话功能的实战经验分享
  • CSP 赛前周记
  • Day16
  • 20250906
  • 在用灵魂去感受另一个灵魂的震颤
  • 百粉粉福
  • 202404_QQ_ZIP嵌套
  • 【初赛】图 - Slayer
  • POJ 2566 Bound Found
  • CF1140F Extending Set of Points
  • Lark免费企业邮箱推荐
  • 耶日奈曼:置信区间与假设检验的奠基者
  • vue3 使用 i18n-auto-extractor库 实现国际化
  • 20231314许城铭课上测试:Linux命令实践(AI)
  • reLeetCode 热题 100-3 最长连续序列 - MKT
  • pdf在纯html5移动端下不显示
  • 面试记录
  • GAS_Aura-Aura Input Component
  • bitset 相关记录
  • VMware Workstation 17.5.2 Build 23775571
  • 编程要求
  • CF827D Best Edge Weight
  • GAS_Aura-Input Config Data Asset
  • [杂谈] 关于听的音乐
  • 202205_第五届市赛_Analyze
  • 7777