第二题(递增二叉树): #coding=utf-8 import sys class Node(object):     def __init__(self, x, left = None, right = None):         self.val = x         self.left = left         self.right = right def func(root):     if not root:         return "NO"     cur_level_sum, cur_level = -1, [root]     while cur_level:         cur_level_val = []         next_level = []         for node in cur_level:             cur_level_val.append(node.val)             if node.left:                 next_level.append(node.left)             if node.right:                 next_level.append(node.right)         if cur_level_sum >= sum(cur_level_val):             return "NO"         cur_level_sum = sum(cur_level_val)         cur_level = next_level     return "YES" if __name__ == "__main__":     T = int(sys.stdin.readline().strip())     for _ in range(T):         N = int(sys.stdin.readline().strip())         id_node_dict = {}         # 构建哈希表 key: 结点编号  value:结点         for i in range(N):             val, left, right = list(map(int, sys.stdin.readline().strip().split()))             id_node_dict[i] = Node(val, left, right)         # 确定根节点:         sub_tree_id = []         for id, node in id_node_dict.items():             if node.left != -1 and node.left not in sub_tree_id:                 sub_tree_id.append(node.left)             if node.right != -1 and node.right not in sub_tree_id:                 sub_tree_id.append(node.right)         root_id = sum(range(N)) - sum(sub_tree_id)         # 构建二叉树:         for id, node in id_node_dict.items():             if node.left == -1:                 node.left = None             else:                 node.left = id_node_dict[node.left]             if node.right == -1:                 node.right = None             else:                 node.right = id_node_dict[node.right]         print(func(id_node_dict[root_id]))
点赞 评论

相关推荐

程序员花海:最好不要在简历写电商 电商覆盖域太多了 订单 购物车 交易 招商 营销 氛围 履约 售后 用户增长 营销等等一系列都是电商,你写一个这么大的项目是让面试官随便挑一个擅长的来问吗?
点赞 评论 收藏
分享
哞客37422655...:兄弟别慌!💪 民办本找实习确实难点,但不是没机会。100+简历才2个面试,可能简历需要优化下: 项目经历写具体点,突出测试用例、bug数量等 技能栏把测试工具/方法论写清楚 可以考虑降低预期,先进小厂积累经验 测试岗相对好进,坚持投!现在才半个月,有人投3个月才上岸的😭 加油,offer在路上了🚀
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务