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分析:1、小頂堆的父結點小於等於左右子結點。
2、判斷很麻煩,仔細。
3、建堆不需要用二叉樹(**複雜且低效),直接陣列。
**:
#includeusing namespace std;
int n,m,a[1001];
void build(int n,int a)}}
int findit(int w)
}int main()
build
(n,a)
;/*for (int i=0;ifor (int i=0;i;i++)
else
else
cout<<"f"
<;
}else
else
cout<<"f"
<;
}else
else
cout<<"f"
<;}}
}}return 0;
}
關於堆的判斷 (小頂堆)
l2 3 關於堆的判斷 將一系列給定數字順序插入乙個初始為空的小頂堆h。隨後判斷一系列相關命題是否為真。命題分下列幾種 每組測試第1行包含2個正整數n le 1000 和m le 20 分別是插入元素的個數 以及需要判斷的命題數。下一行給出區間 10000,10000 10000,10000 100...
L2 012 關於堆的判斷(小頂堆)
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 將一系列給定數字順序插入乙個初始為空的小頂堆h。隨後判斷一系列相關命題是否為真。命題分下列幾種 輸入格式 每組測試第1行包含2個正整數n 1000 和m 20 分別是插入元素的個數 ...
關於堆的判斷(map 小頂堆陣列模擬)
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 分別是插入元素的個數 ...