欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
S42502.25-2 累积节点
25-2 累积节点
累积节点
环绕送货完了,但Zero的数据结构是树形的——需要累积节点。
"累积?"CC问。
"对。"你说,"给定一棵树,每个节点有一个值。选一个连通块,使得权值和最大。"
"连通块?"
"对。"你说,"节点之间通过边连接,选的要连在一起。"
"最大?"
"对。"你说,"用树形DP。"
"树形DP?"
"对。"你说,"表示以为根的子树中,选连通块的最大权值和。"
"转移?"
"对。"你说,"。"
"?"
"对。"你说,"如果子树的贡献是负的,就不选它。"
"第47个节点。"你说,"权值47——如果它的子树都是正的,全选。"
"如果有负的?"
"不选。"你说,"只选正的,累积起来。"
"像捡钱?"
"对。"你说,"像捡钱——地上的钱捡,坑里的不跳。"
"坑?"
"对。"你说,"负权值就是坑——跳进去,损失。"
"咋避?"
"不选。"你说,"就是不跳坑。"
CC看着那棵树——像一棵真的树,像家族谱,像某种有根有枝的东西。
"根在哪?"她问。
"任意。"你说,"树无根,但我们可以任选一个当根。"
"选哪个?"
"哪个都行。"你说,"结果一样。"
Echo把累积过程投射出来——节点一个一个亮起来,像果实,像星星。
"以前我只看叶子。"她说,"现在……看见整棵树了。"
"因为你在往上爬。"你说。
"对。"她说,"因为我在往上爬。
题目描述
给定一棵树,每个节点有权值。求权值和最大的连通块。
输入格式
第一行。第二行个整数权值。接下来行,每行一条边。
输出格式
最大连通块权值和。
输入样例
5
1 2 3 4 5
输出样例
0
0
0
0
0
提示
- 树形DP:。
- DFS遍历,后序计算。
- 时间复杂度。
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |