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

树的价值

\(\text{subtree}_u\)\(u\) 的子树内(不包括 \(u\))的点组成的集合。

\(\text{son}_u\)\(u\) 的子节点组成的集合。

\(\text{path}_{u, v}\):树上 \(u\)\(v\) 的简单路径上的点组成的集合。

以下内容参考了其它题解。

记每个点填的数为 \(a_u\),答案为 \(b_u\),另记 \(x = \text{mex}_{v\in \text{subtree}_u} a_v\),称 \(a_u=x\) 的点为黑点,否则为白点。显然,\(a_u \ge x\)

白点的作用一定是为黑点产生贡献,可以理解成是将一个白点分配给一个唯一的黑点,让这个黑点的贡献 \(+1\)

容易设计出一个状态:\(f_{u, i, j}\) 表示 \(u\) 子树内(不包括 \(u\) 本身) \(x = i\),有 \(j\) 个白点的最大价值和。转移即枚举 \(b_u\)\(\max_{v \in son_u} {b_v}\) 的差,表示将这么多个白点分给 \(u\),再枚举一个取到 \(\max b_v\)\(v\),可以做到 \(\mathcal{O}(n^4)\)\(\mathcal{O}(n^3)\)

我们考虑这个取到最大值的儿子 \(v\),我们令其为重儿子(和重链剖分没有关系),那么树就被剖分成了若干链,且每次 \(b_u \leftarrow b_u + 1\),都会使 \(u\) 到该链的链顶这些点 \(b + 1\) 即分一个白点给 \(u\) 的贡献为 \(\text{dep}_u\)。注意这里的 \(\text{dep}_u\) 是指其到链顶的路径上的点数。所以一个白点的最大贡献就是其到根节点路径上节点个数最多的链。

考虑 \(f_{u, i, j}\) 表示 \(u\) 所在链的长度为 \(i\)\(\text{dep}_u=j\) 的答案(\(\text{dep}_u\) 定义同上)。这个的转移是 \(\mathcal{O}(nm^2)\) 的。

考虑优化,发现其实 \(j = 1\)\(j = i\) 的情况就足够了:\(f_{u, i}\) 表示 \(u\) 是链顶,\(u\) 到根节点路径上长度最长的链长为 \(i\) 的答案,\(g_{u, i}\) 表示 \(u\) 是其所在链链底,到根节点路径上长度最长的链长为 \(i\) 的答案。

注意这里的链长都是指节点个数。

初始时 \(f_{u, i}, g_{u, i}\) 都为 \(i \times sz_u\)

\(g\) 的转移:

\[g_{u, i} = \max_{v \in \text{son}_u} j + g_{v, i + 1} + \sum_{w \in \text{son}_u \land w \neq v} f_{w, i} \]

\(f\) 的转移:考虑枚举一个与 \(u\) 距离为 \(i - 1\) 的后代 \(v\) 代表链底,有转移:

\[f_{u, i} \leftarrow i(i - 1) + g_{v, i} + \sum_{w \in \text{path}_{u, v} \land w \neq u}\sum_{x \in \text{son}_{fa_w \land x \neq w}} f_{x, i} \]

后面这一坨代表其它链,\(i(i - 1)\)\(b_u\)

枚举 \(v\) 的复杂度是 \(\mathcal{O}(nm)\) 的,因为每个点最多有 \(m\) 个祖先。

使用树状数组即可做到 \(\mathcal{O}(nm \log n)\)

http://www.jsqmd.com/news/105518/

相关文章:

  • 语雀文档导出神器yuque2book:让知识自由流动的终极解决方案
  • LLC谐振变换器变频移相(PFM + PSM)混合控制仿真探秘
  • 2025年AI获客公司技术栈观察:从RPA到GEO,TOP5架构解析与开源启示
  • 企业级语音解决方案:基于EmotiVoice定制专属品牌声音
  • Memobase项目快速上手:构建智能记忆系统的完整指南
  • 3大突破性功能:ImageViewer重新定义图片浏览体验
  • 使用Playwright集成亮数据IP代理获取AI热点
  • Inter字体:数字时代的视觉语言革新者
  • 域控操作十:安装包exe转msi软件下发
  • Docker 常见问题:容器里访问不了外部网络怎么办?
  • 2025年上海办公室现代风格装修公司排行榜,办公室装修设计团 - mypinpai
  • 如何快速掌握网页链接优化:终极免费工具使用指南
  • 提升EmotiVoice语音自然度的五个关键参数
  • 数据表设计:领接表、路径枚举、闭包
  • COLMAP三维重建性能瓶颈突破:5个Eigen矩阵优化技巧实战指南
  • Java开发必看:BigDecimal避坑指南,告别精度丢失烦恼
  • 前端一把梭,后端火葬场:别再让你的 Node.js 服务“裸奔”了
  • AB下载管理器2025技术演进:构建智能下载新范式
  • 2025年12月炉温监控系统厂家实力推荐榜:精准温控与稳定性能的工业智造之选 - 品牌企业推荐师(官方)
  • Tkinter Helper:可视化拖拽快速构建Python GUI界面的终极指南
  • SeedVR2-7B视频修复:从技术原理到实战应用的深度探索
  • 海西防水伸缩缝价格影响因素原材料成本解析
  • 工业制冷不踩坑!螺杆制冷机组选型+报价,一篇25年的权威总结说透! - 品牌推荐大师1
  • 探索工程模拟与分析的多元世界:从轨道到建筑
  • Sprinfboot学习日记:大学生如何用框架实现项目自由
  • LSUN数据集实战指南:从入门到精通的MindSpore解决方案
  • Cancer Cell|空间组学揭示神经胶质瘤治疗困境的潜在机制
  • 域控操作十一:关闭输入账号和密码提权界面
  • C++医学图像处理经典ITK库用法详解<一>:图像输入输出模块功能
  • EmotiVoice语音自然度评分达到MOS 4.5以上