多棧模擬問題

2021-08-27 16:02:48 字數 396 閱讀 7894

任務:模擬當前系統中各棧的工作轉態

輸入:第1行是乙個正整數n,表示n個棧操作。接下來n行,每行乙個棧操作指令。"push a b"表示將正整數b壓入編號為a的棧頂,"pop a"表示彈出並輸出棧a的棧頂元素,為棧為空則輸出0

不是什麼特別難的演算法,就隨便寫寫了,關鍵在於棧的編號不是順序的,而且也沒有範圍,所以考慮使用map來儲存

#include #include #include using namespace std;

int main()

else if( opt == "pop" )else

} } cout << "------end------" << endl; }

return 0;

}

括號匹配問題(棧模擬)

在某個字串 長度不超過100 中有左括號 右括號和大小寫字母 規定 與常見的算數式子一樣 任何乙個左括號都從內到外與在它右邊且距離最近的右括號匹配。寫乙個程式,找到無法匹配的左括號和右括號,輸出原來字串,並在下一行標出不能匹配的括號。不能匹配的左括號用 標註,不能匹配的右括號用 標註.輸入包括多組資...

AcWing 模擬棧 棧 模擬

時 空限制 1s 64mb 實現乙個棧,棧初始為空,支援四種操作 1 push x 向棧頂插入乙個數x 2 pop 從棧頂彈出乙個數 3 empty 判斷棧是否為空 4 query 查詢棧頂元素。現在要對棧進行m個操作,其中的每個操作3和操作4都要輸出相應的結果。第一行包含整數m,表示操作次數。接下...

hdu多校(一)1009(棧模擬 數學)

leading robots 題意 已知機械人v t a tv t a t v t a t,現有n nn個機械人,給定機械人的當前位置pos itio nposition positi on,加速度a aa。問經過無限長的時間後,有多少個機械人當過第一位?思路 沒啥思路,最後肯定是a最大的機械人排在...