給定一棵包含 n 個節點的完全二叉樹,樹上每個節點都有乙個權值,按從 上到下、從左到右的順序依次是 a1, a2, · · · an,如下圖所示:
現在小明要把相同深度的節點的權值加在一起,他想知道哪個深度的節點 權值之和最大?如果有多個深度的權值和同為最大,請你輸出其中最小的深度。
注:根的深度是 1。
輸入第一行包含乙個整數 n。 第二行包含n個整數a1,a2,··· an。
輸出輸出乙個整數代表答案。
樣例輸入
7
1 6 5 4 3 2 1
樣例輸出
2
層數
每層節點數
全部節點數
12^0
2^1-1
22^1
2^2-1
n2^(n-1)
2^n-1
假設這棵樹是完全二叉樹,也就是除了最後一層對於其他每一層而言,都是滿的,同時,完全二叉樹和滿二叉樹的層數計算方法一樣,**中有具體實現,如果這棵樹有n個節點,把每個節點放在陣列中,陣列下標從1開始,那麼剛好2^(n-1)是第n層第乙個數的下標,2^n-1是第n層最後乙個數的下標,但是因為它是完全二叉樹,所以最後一層需要單獨算
#include#include#include#define ll long long
int main()
ll sum;
for(i=1;imaxx)
}sum=0;
for(i=pow(2,k-1);i<=n;i++)
sum+=a[i];
if(sum>maxx)
printf("%lld\n",flag);
return 0;
}
1457 藍橋杯2019初賽 完全二叉樹的權值
給定一棵包含n 個節點的完全二叉樹,樹上每個節點都有乙個權值,按從 上到下 從左到右的順序依次是a1,a2,an,如下圖所示 現在小明要把相同深度的節點的權值加在一起,他想知道哪個深度的節點 權值之和最大?如果有多個深度的權值和同為最大,請你輸出其中最小的深度。注 根的深度是1。1 完全二叉樹不一定...
1457 藍橋杯2019初賽 完全二叉樹的權值
原題鏈結 給定一棵包含n 個節點的完全二叉樹,樹上每個節點都有乙個權值,按從 上到下 從左到右的順序依次是a1,a2,an,如下圖所示 現在小明要把相同深度的節點的權值加在一起,他想知道哪個深度的節點 權值之和最大?如果有多個深度的權值和同為最大,請你輸出其中最小的深度。注 根的深度是1。716 5...
藍橋杯 完全二叉樹的權值
試題 g 完全二叉樹的權值 時間限制 1.0s 記憶體限制 256.0mb 本題總分 20 分 問題描述 給定一棵包含 n 個節點的完全二叉樹,樹上每個節點都有乙個權值,按從 上到下 從左到右的順序依次是 a1,a2,an,如下圖所示 現在小明要把相同深度的節點的權值加在一起,他想知道哪個深度的節點...