#789. 二叉树的权值
二叉树的权值
题目描述
给定一棵包含 N 个节点的完全二叉树,树上每个节点都有一个权值,按从上到下、从左到右的顺序依次是 A1,A2,...,AN,如下图所示: 现在小明要把相同深度的节点的权值加在一起,他想知道哪个深度的节点权值之和最大?如果有多个深度的权值和同为最大,请你输出其中最小的深度。 注:根的深度是 1。
输入格式
第一行包含一个整数 N。 第二行包含 N 个整数 A1,A2,…,AN。
输出格式
输出一个整数代表答案。
样例
输入样例 1
7
1 6 5 4 3 2 1
输出样例 1
2
输入样例 2
1
5
输出样例 2
1
输入样例 3
2
3 4
输出样例 3
2
提示
提示:完全二叉树的第k层有2^k个结点(第一层k=0),因此可以通过计数的方式,在枚举数组的同时,分别累计每个深度的结点数量。 一旦某一层累加的结点数足够了,就记录并比较大小,然后初始化各个数据,重新再累加计算。