soj 2543 完全二叉樹

2022-09-18 17:21:10 字數 975 閱讀 4082

1000. 完全二叉樹

total:

338accepted:

81time limit: 1sec    memory limit:256mb

description

如下圖,由正整數1,2,3,...組成一棵無限大的滿二叉樹。從某乙個結點到根結點(編號是1的結點)都有

一條唯一的路徑,比如10到根節點的路徑是(10,5,2,1),由4到根節點的路徑是(4,2,1),從根結點1到根結點

的路徑上只包含乙個結點1,因此路徑是(1)。

對於兩個結點x和y,假設它們到根結點的路徑分別是(x1,x2,...,1)和(y1,y2,...,1)(這裡顯然有x=x1,y=y1),

那麼必然存在兩個正整數i和j,使得從xi和yj開始,有xi=yj,xi+1=yj+1,...,現在的問題就是,給定x和y,

要求xi(也就是yj)。

12 3

4 5 6 7

8 9 10 11 12 13 14 15

... ... ... ...

input

輸入的第一行是乙個整數t,表示測試用例個數。以下t行,每行對應乙個測試用例。

每個測試用例包括兩個整數x和y,這兩個整數都不大於1000。

output

對每個測試用例,單獨一行輸出乙個整數xi。

sample input

copy sample input to clipboard

1

10 4

7 13

sample output

2

3

#includeusing namespace std;

int main()

cout<

} return 0;

}

二叉樹,完全二叉樹,滿二叉樹

二叉樹 是n n 0 個結點的有限集合,它或者是空樹 n 0 或者是由乙個根結點及兩顆互不相交的 分別稱為左子樹和右子樹的二叉樹所組成。滿二叉樹 一顆深度為k且有2 k 1個結點的二叉樹稱為滿二叉樹。說明 除葉子結點外的所有結點均有兩個子結點。所有葉子結點必須在同一層上。完全二叉樹 若設二叉樹的深度...

二叉樹和完全二叉樹

二叉樹規律 假設根節點的高度為0 二叉樹是每個節點至多只有兩個節點的樹 深度為i所在的層至多有 2 i個節點 高度為k的二叉樹至多有2 k 1 1個節點 n0表示度為0的節點,n2表示度為2的節點,存在n0 n2 1 對所有樹有 節點個數 邊數 1 完全二叉樹規律 節點數為n的完全二叉樹,其高度為 ...

完全二叉樹

最近在看資料結構和演算法,這好多天沒碰幾乎全忘,搞乙個看到乙個完全二叉樹都算了半天,網上眾說紛紜啊,我還是以我的理解記錄一下給我做個記憶吧,以我這記憶力指不定以後又忘了。首先幾個概念 理想二叉樹,滿二叉樹,完全二叉樹。1 滿二叉樹 所有節點 除葉子 都有2個子節點,葉子節點都在一層,就是滿了的意思。...