關於堆的判斷(map 小頂堆陣列模擬)

2021-10-10 09:18:02 字數 1454 閱讀 5560

x is the root:x是根結點;

x and y are siblings:x和y是兄弟結點;

x is the parent of y:x是y的父結點;

x is a child of y:x是y的乙個子結點。

輸入格式:

每組測試第1行包含2個正整數n(≤ 1000)和m(≤ 20),分別是插入元素的個數、以及需要判斷的命題數。下一行給出區間[−10000,10000]內的n個要被插入乙個初始為空的小頂堆的整數。之後m行,每行給出乙個命題。題目保證命題中的結點鍵值都是存在的。

輸出格式:

對輸入的每個命題,如果其為真,則在一行中輸出t,否則輸出f。

輸入樣例:

5 446 23 26 24 10

24 is the root

26 and 23 are siblings

46 is the parent of 23

23 is a child of 10

輸出樣例:ft

ft注意

#include

using

namespace std;

int tree[

1005];

void

build_heap

(int i)

else

break;}

}int

solve

(string s)

if(s[i]

=='-'

) fushu =

true;}

int ans;

stringstream ss

(t);

ss >> ans;if(

!fushu)

return ans;

else

return

-ans;

}int

main()

// for(int i = 1; i <= n; i++)

map<

int,

int> m;

for(

int i =

1; i <= n; i++

)//堆陣列從1開始,不然對映會出問題

while

(m--

)else

continue;}

if(s.

substr(0

,3)==

"and"

)else

//x是y的父結點

if(s.

substr(0

,11)==

"is the pare"

)//x是y的乙個子結點

if(s.

substr(0

,11)==

"is a child ")}

}return0;

}

關於堆的判斷 (小頂堆)

l2 3 關於堆的判斷 將一系列給定數字順序插入乙個初始為空的小頂堆h。隨後判斷一系列相關命題是否為真。命題分下列幾種 每組測試第1行包含2個正整數n le 1000 和m le 20 分別是插入元素的個數 以及需要判斷的命題數。下一行給出區間 10000,10000 10000,10000 100...

小頂堆 關於堆的判斷

x is the root x是根結點 x and y are siblings x和y是兄弟結點 x is the parent of y x是y的父結點 x is a child of y x是y的乙個子結點。輸入格式 每組測試第1行包含2個正整數n 1000 和m 20 分別是插入元素的個數 ...

L2 012 關於堆的判斷(小頂堆)

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 將一系列給定數字順序插入乙個初始為空的小頂堆h。隨後判斷一系列相關命題是否為真。命題分下列幾種 輸入格式 每組測試第1行包含2個正整數n 1000 和m 20 分別是插入元素的個數 ...