26886 樹的路徑

2021-07-03 17:35:40 字數 1272 閱讀 9901

題目描述

給定一棵二叉樹和兩個不同的節點,求出他們到最近的公共祖先父節點的路徑。已知該二叉樹有n個節點,標號1..n。(n<100) 輸入

輸入:

第一行兩個整數x,y,表示需要求的節點;

以下若干行,每行兩個整數a和b,表示a的父節點是b。 輸出

x到y的路徑。

樣例輸入

9 7

2 13 2

4 25 3

8 59 5

6 47 4

樣例輸出

9 5 3 2 4 7
program x26886;

const maxn=100;

var father,a,b:array[1..maxn] of integer;

x,y,root:integer;

procedure init;

var a,b:integer;

begin

readln(x,y);

while not eof do

begin

readln(a,b);

father[a]:=b;

end;

end;

procedure findroot;

var i,j:integer;

begin

i:=x;

while i<>0 do

begin

a[i]:=1;

i:=father[i];

end;

j:=y;

while a[j]<>1 do

j:=father[j];

root:=j;

end;

procedure finda(i:integer);

begin

if i<>root then

begin

write(i,' ');

finda(father[i]);

end;

end;

procedure findb(i:integer);

begin

if i<>root then

begin

findb(father[i]);

write(i,' ');

end;

end;

begin

init;

findroot;

finda(x);

write(root,' ');

findb(y);

end.

樹的路徑覆蓋

description 給一棵樹,用最少的路徑去覆蓋所有的邊,求 1 允許邊被重複覆蓋,2 不允許邊被重複覆蓋.input 第一行是組數t t 20 每組兩行,第一行是n 1 n 10 5 第二行是n 1個數 0 based 第i個數x i 表示有一條邊 x i i 1 0 i n 2 output...

樹的路徑長度

樹的路徑長度是指 從樹根到每乙個節點的路徑長度的總和 相同節點個數下,完全二叉樹就是這種路徑長度最短的二叉樹,注意這是對於二叉樹而言。注意上述是說從樹根到每乙個節點的路徑長的總和,如下圖 來自這 該樹的路徑長度為 ab ab bd ac ac ce ac cf 然而事實上,如果單說路徑長度而不帶權,...

Leetcode 樹的路徑遍歷

給定乙個僅包含數字0 9的二叉樹,每一條從根節點到葉子節點的路徑都可以用乙個數字表示。例如根節點到葉子節點的一條路徑是1 2 3,那麼這條路徑就用123來代替。找出根節點到葉子節點的所有路徑表示的數字之和 例如 1 2 3根節點到葉子節點的路徑1 2用數字12代替 根節點到葉子節點的路徑1 3用數字...