#LQK12BC06. 二叉树权值
二叉树权值
题目描述
给出一棵包含 个节点的完全二叉树,节点按照从上到下、从左到右的顺序依次排序,每个节点上都有一个权值,如下图现在需要将同一深度节点的权值加在一起,然后比较每个深度的权值之和,输出权值之和最大的深度值。
如果有多个深度的权值之和相同,则输出其中最小的深度(如:深度 权值之和为 ,深度 权值之和也为 ,且是所有深度权值之和的最大值,则输出 )。
注:根的深度为
输入格式
第一行输入完全二叉树节点的总数量
第二行输入 个正整数作为每个节点的权值。
输出格式
输出权值之和最大的深度值(如果有多个深度的权值之和相同则输出其中最小的深度值)。
样例数据
6
1 5 6 1 2 3
2
8
1 5 6 1 2 3 4 100
4
样例说明
下图与样例一对应。深度 的权值之和为 ,深度 的权值之和为 ,深度 的权值之和为 。其中深度 的权值之和最大,则输出 。
数据范围
对于 的数据,,任一节点权值不超过
额外说明
满二叉树:一棵二叉树,如果每一层的节点数都达到最大值,则这个二叉树就是满二叉树。即如果一棵二叉树的层数为 ,且结点总数是 ,那么它就是满二叉树。
完全二叉树:一棵深度为 的二叉树,除第 层外,其他各层( 至 层)的节点数都达到最大值,且第 层的所有节点都连续集中在左边,那么它就是完全二叉树。
节点:包含一个数据元素及若干指向子树分支的信息。
权值:对节点赋予的有意义的数量值。
深度:也被称为树的高度,树中所有节点的层次最大值称为树的深度,例如下图中的二叉树深度都为 。