盘丝洞破阵寻珠
2026 华为OD机试真题 6月24日华为OD上机新系统考试真题 100 分题型
点击查看华为 OD 机试真题完整目录:2026最新华为OD机试新系统卷 + 双机位C卷 真题题库目录|全覆盖题库 + 逐点算法考点详解
题目描述
天命人深入盘丝洞,洞内布满了蜘蛛精设下的迷阵。整座洞穴呈二叉树结构,每个结点是一间石室,石室中藏有灵气结晶(整数,可正可负,零值视为非负)。
天命人从根石室出发,寻找通往叶子石室的路径收集灵气。但盘丝洞有毒瘴禁制:路径上不允许出现连续两个或以上灵气值为负的石室。
叶子石室的定义:左右子结点均为空的结点。
请实现一个函数,在一遍遍历中同时计算以下三个指标:
- 合法路径的最大灵气和
- 是否存在合法路径和 ≥ 给定阈值
- 合法路径的总数
输入描述
二叉树根节点 root,整数 threshold
输出描述
包含 3 个整数的数组 [max_val, has_path_ge, count]:
- max_val:合法路径的最大灵气和,无合法路径返回 −2147483648
- has_path_ge:存在合法路径和 ≥threshold 返回 1,否则返回 0
- count:合法路径的总数
二叉树输入格式说明
二叉树采用层次遍历方式序列化表示:
- 按从上到下、从左到右的顺序依次列出每个节点的值
- # 表示该位置为空节点(无子节点)
- 空树用 {} 或 {#} 表示
示例:{10,−5,20,#,8,−6,15} 表示:

解析规则:根节点为 10,左子节点 −5(其左子为空 #,右子为 8),右子节点 20(左子 −6,右子 15)。
数据范围
| 项目 | 范围 |
|---|---|
| 节点数 | 0≤n≤105 |
| 节点值 | −100≤val≤100 |
| 树深度 | ≤104 |
| 阈值 | −109≤threshold≤109 |
空树说明:当 n=0 时返回 [−2147483648,0,0]。
示例1
输入
10,-5,20,#,8,-6,15
40
输出
45,1,3
说明
从根到叶子共 33 条路径:
从根到叶子共 3 条路径:
- 10→−5→8,和 = 13,负节点

订阅专栏 解锁全文

248

被折叠的 条评论
为什么被折叠?



