关注
第二题(递增二叉树): #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]))
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
01-13 17:51
河南科技学院 Java 程序员花海:最好不要在简历写电商 电商覆盖域太多了 订单 购物车 交易 招商 营销 氛围 履约 售后 用户增长 营销等等一系列都是电商,你写一个这么大的项目是让面试官随便挑一个擅长的来问吗?
点赞 评论 收藏
分享
01-06 16:32
广东科技学院 软件测试
哞客37422655...:兄弟别慌!💪 民办本找实习确实难点,但不是没机会。100+简历才2个面试,可能简历需要优化下:
项目经历写具体点,突出测试用例、bug数量等
技能栏把测试工具/方法论写清楚
可以考虑降低预期,先进小厂积累经验
测试岗相对好进,坚持投!现在才半个月,有人投3个月才上岸的😭 加油,offer在路上了🚀 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
12031次浏览 154人参与
# 你的mentor是什么样的人? #
51078次浏览 720人参与
# 程序员找工作至少要刷多少题? #
20753次浏览 265人参与
# 我和mentor的爱恨情仇 #
106217次浏览 947人参与
# 论秋招对个人心气的改变 #
12953次浏览 177人参与
# 秋招落幕,你是He or Be #
54170次浏览 618人参与
# 机械人避雷的岗位/公司 #
44029次浏览 306人参与
# 校招第一份工作你干了多久? #
136615次浏览 597人参与
# 为了减少AI幻觉,你注入过哪些设定? #
5808次浏览 175人参与
# 设计人如何选offer #
189667次浏览 868人参与
# 你的秋招进行到哪一步了 #
2530604次浏览 23253人参与
# 机械人还在等华为开奖吗? #
312094次浏览 1582人参与
# 牛客AI体验站 #
7585次浏览 202人参与
# 秋招投递记录 #
380869次浏览 3203人参与
# 重来一次,我还会选择这个专业吗 #
411211次浏览 3898人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2274次浏览 51人参与
# 职场上哪些行为很加分? #
322469次浏览 3600人参与
# 我现在比当时_,你想录用我吗 #
9288次浏览 124人参与
# 互联网公司评价 #
485858次浏览 4111人参与
# 一张图晒一下你的AI员工 #
5650次浏览 126人参与
OPPO公司福利 1112人发布