題目重述
輸入格式:
每組測試第1行包含2個正整數n(≤ 1000)和m(≤ 20),分別是插入元素的個數、以及需要判斷的命題數。下一行給出區間[−10000,10000]內的n個要被插入乙個初始為空的小頂堆的整數。之後m行,每行給出乙個命題。題目保證命題中的結點鍵值都是存在的。
輸出格式:
對輸入的每個命題,如果其為真,則在一行中輸出t,否則輸出f。
輸入樣例:
5446
2326
2410
24 is the root
26and
23 are siblings
46 is the parent of 23
23 is a child of 10
輸出樣例:ftf
t
題解
構造最小堆,然後判斷即可,因為我是從下標1開始輸出的 所以i的父親下標就是i/2。
c++ ac
#include
#include
using
namespace std;
int heap[
1005];
int n,m,x,y;
intfind_loc
(int value)
}return-1
;}intmain()
}for
(int i=
0;i)else
}else
}else
}return0;
}
PTA 7 38 尋找大富翁(優先佇列的使用)
本題考點 胡潤研究院的調查顯示,截至2017年底,中國個人資產超過1億元的高淨值人群達15萬人。假設給出n個人的個人資產值,請快速找出資產排前m位的大富翁。學會使用優先佇列,不僅要會大頂堆 優先佇列 也要會小頂堆的使用 priority queue,greater pq 完整 如下 尋找大富翁 優先...
PTA 關於堆的判斷
7 13 關於堆的判斷 25分 輸入格式 每組測試第1行包含2個正整數n 1000 和m 20 分別是插入元素的個數 以及需要判斷的命題數。下一行給出區間 10000,10000 內的n個要被插入乙個初始為空的小頂堆的整數。之後m行,每行給出乙個命題。題目保證命題中的結點鍵值都是存在的。輸出格式 對...
PTA 關於堆的判斷(25分)
一 堆的概念 堆是完全二叉樹。參考 4條訊息 資料結構堆的概念 堆排序的思想以及演算法過程詳解 lifegoeson csdn部落格 堆的概念 二 堆的初始化 一般給出乙個陣列,需要乙個乙個數的新增到堆,而堆也分為大頂堆和小頂堆,此時需要了解堆的上調和下調。參考 二 例題 l2 012 關於堆的判斷...