#P0594. 洗碗日
洗碗日
题目描述
今天是你洗碗的日子。妈妈在厨房忙碌着做饭,你负责清洗一大堆脏盘子。洗干净的盘子要按顺序摞在碗碟架上 —— 新洗好的盘子总是放在最上面,毕竟架子空间有限。
“盘子!” 妈妈在灶台前喊了一声,手里还忙着翻炒锅里的菜。你明白她的意思:从碗碟架最上方拿一个干净的盘子递过去。有时候盘子用得快,架子上一个都没有了,这时你就得回一句 “没盘子了!”。
请根据妈妈的操作指令,模拟这一天洗碗递盘子的过程。
输入格式
第一行一个整数 ,表示总操作次数。
接下来 n 行,每行一个操作,格式为以下五种之一:
push x:你把编号为 的盘子洗好放到了架子上pop:妈妈要一个盘子,你把架子最上面的盘子递过去top:你想知道架子最上面是什么盘子isEmpty:你想知道架子上还有没有盘子size:你想知道架子上现在有多少个盘子
输出格式
根据操作类型输出相应结果:
- 对于
push操作:不输出任何内容。 - 对于
pop操作:如果架子不为空,取走最上面的盘子;否则输出Empty。 - 对于
top操作:如果架子不为空,输出最上面的盘子编号;否则输出Empty。 - 对于
isEmpty操作:如果架子为空输出Yes,否则输出No。 - 对于
size操作:输出架子上的盘子数量。
每个输出占一行。
样例
12
push 101
push 102
top
pop
size
push 103
pop
pop
isEmpty
push 104
pop
pop
102
1
Yes
Empty
样例1解释
操作过程:
- 放入盘子
- 放入盘子
- 查看顶部 → 输出
- 取出盘子 → 取出
- 查看数量 → 输出
- 放入盘子
- 取出盘子 → 取出
- 取出盘子 → 取出
- 检查是否为空 → 输出
Yes - 放入盘子
- 取出盘子 → 取出
- 取出盘子 → 架子为空,输出
Empty
数据范围
对于 的数据,, 盘子编号 。