第一行乙個整數n。
下面n行每行有兩個數,對於第i行的兩個數,代表編號為i的節點所連線的兩個左右兒子的編號。如果沒有某個兒子為空,則為0。
輸出共一行,輸出二叉樹的最大寬度和高度,用乙個空格隔開。
52 3
4 50 0
0 00 0
2 3n<16預設第乙個是根節點
/*
題目:p1501二叉樹最大寬度和高度
*/#include< cstdio >
#include< iostream>
using namespace std;
int l[30],r[30],fa[30],b[30],n,k,width,depth ;
int main()
for(int i = 1 ; i <= n; i ++)
//從下向上找,一直找到根節點,k為深度
//b[k]儲存深度為k的節點的個數
b[k]++;
depth=max(depth,k);
width=max(width,b[k]);
}cout
}
1501 二叉樹最大寬度和高度
題目描述 description 給出乙個二叉樹,輸出它的最大寬度和高度。輸入描述 input description 第一行乙個整數n。下面n行每行有兩個數,對於第i行的兩個數,代表編號為i的節點所連線的兩個左右兒子的編號。如果沒有某個兒子為空,則為0。輸出描述 output descriptio...
1501 二叉樹最大寬度和高度
題目描述 description 給出乙個二叉樹,輸出它的最大寬度和高度。輸入描述 input description 第一行乙個整數n。下面n行每行有兩個數,對於第i行的兩個數,代表編號為i的節點所連線的兩個左右兒子的編號。如果沒有某個兒子為空,則為0。輸出描述 output descriptio...
二叉樹 二叉樹
題目描述 如上所示,由正整數1,2,3 組成了一顆特殊二叉樹。我們已知這個二叉樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹...