題目1108 堆疊的使用

2021-07-11 04:02:12 字數 1102 閱讀 3575

題目描述:

堆疊是一種基本的資料結構。堆疊具有兩種基本操作方式,push 和 pop。push乙個值會將其壓入棧頂,而 pop 則會將棧頂的值彈出。現在我們就來驗證一下堆疊的使用。

輸入:

對於每組測試資料,第一行是乙個正整數 n,n<=10000(n=0 結束)。而後的 n 行,每行的第乙個字元可能是』p』或者』o』或者』a』;如果是』p』,後面還會跟著乙個整數,表示把這個資料壓入堆疊;如果是』o』,表示將棧頂的值 pop 出來,如果堆疊中沒有元素時,忽略本次操作;如果是』a』,表示詢問當前棧頂的值,如果當時棧為空,則輸出』e』。堆疊開始為空。

輸出:

對於每組測試資料,根據其中的命令字元來處理堆疊;並對所有的』a』操作,輸出當時棧頂的值,每個佔據一行,如果當時棧為空,則輸出』e』。當每組測試資料完成後,輸出乙個空行。

樣例輸入:

3 a

p 5

a 4

p 3

p 6

o a

0樣例輸出:e 5

2023年吉林大學計算機研究生機試真題

#include

#include

#include

#include

#include

using

namespace

std;

int main()

for (int i = 0; i < inputnum; i++)

else

break;

case

'p':

int tmp;

scanf("%d", &tmp);

buf.push(tmp);

break;

case

'o':

if (buf.empty())

else

default:

break;}}

cout

<< endl;

}return

0;}

題目1108 堆疊的使用

題目描述 堆疊是一種基本的資料結構。堆疊具有兩種基本操作方式,push 和 pop。push乙個值會將其壓入棧頂,而 pop 則會將棧頂的值彈出。現在我們就來驗證一下堆疊的使用。輸入 對於每組測試資料,第一行是乙個正整數 n,0 輸出 對於每組測試資料,根據其中的命令字元來處理堆疊 並對所有的 a ...

九度題目1108 堆疊的使用

堆疊的使用 時間限制 1 秒 記憶體限制 32 兆 特殊判題 否 提交 4344 解決 1249 題目描述 堆疊是一種基本的資料結構。堆疊具有兩種基本操作方式,push 和 pop。push乙個值會將其壓入棧頂,而 pop 則會將棧頂的值彈出。現在我們就來驗證一下堆疊的使用。輸入 對於每組測試資料,...

九度OJ題目1108 堆疊的使用

題目描述 堆疊是一種基本的資料結構。堆疊具有兩種基本操作方式,push 和 pop。push乙個值會將其壓入棧頂,而 pop 則會將棧頂的值彈出。現在我們就來驗證一下堆疊的使用。輸入 對於每組測試資料,第一行是乙個正整數 n,0 輸出 對於每組測試資料,根據其中的命令字元來處理堆疊 並對所有的 a ...