未完成 7 15 特殊堆疊 30 分

2021-09-25 23:21:35 字數 995 閱讀 8425

堆疊是一種經典的後進先出的線性結構,相關的操作主要有「入棧」(在堆疊頂插入乙個元素)和「出棧」(將棧頂元素返回並從堆疊中刪除)。本題要求你實現另乙個附加的操作:「取中值」——即返回所有堆疊中元素鍵值的中值。給定 n 個元素,如果 n 是偶數,則中值定義為第 n/2 小元;若是奇數,則為第 (n+1)/2 小元。

輸入的第一行是正整數 n(≤10​5​​)。隨後 n 行,每行給出一句指令,為以下 3 種之一:

push key

poppeekmedian

其中key是不超過 10​5​​ 的正整數;push表示「入棧」;pop表示「出棧」;peekmedian表示「取中值」。

對每個push操作,將key插入堆疊,無需輸出;對每個poppeekmedian操作,在一行中輸出相應的返回值。若操作非法,則對應輸出invalid

17

poppeekmedian

push 3

peekmedian

push 2

peekmedian

push 1

peekmedian

poppop

push 5

push 4

peekmedian

poppop

poppop

invalid

invalid32

2124

453invalid

#include using namespace std;

int main() else if(str=="pop")

} else }}

return 0;

}

特殊堆疊 30 分

堆疊是一種經典的後進先出的線性結構,相關的操作主要有 入棧 在堆疊頂插入乙個元素 和 出棧 將棧頂元素返回並從堆疊中刪除 本題要求你實現另乙個附加的操作 取中值 即返回所有堆疊中元素鍵值的中值。給定 n 個元素,如果 n 是偶數,則中值定義為第 n 2 小元 若是奇數,則為第 n 1 2 小元。輸入...

3 3 6 特殊堆疊 30分

是參考一篇部落格的,然後加了一些自己的注釋,學習ing 堆疊是一種經典的後進先出的線性結構,相關的操作主要有 入棧 在堆疊頂插入乙個元素 和 出棧 將棧頂元素返回並從堆疊中刪除 本題要求你實現另乙個附加的操作 取中值 即返回所有堆疊中元素鍵值的中值。給定 n 個元素,如果 n 是偶數,則中值定義為第...

未完成 7 13 最短工期 25 分

乙個專案由若干個任務組成,任務之間有先後依賴順序。專案經理需要設定一系列里程碑,在每個里程碑節點處檢查任務的完成情況,並啟動後續的任務。現給定乙個專案中各個任務之間的關係,請你計算出這個專案的最早完工時間。首先第一行給出兩個正整數 專案里程碑的數量 n 100 和任務總數 m。這裡的里程碑從 0 到...