#445. 「6-1」A、栈的基本操作

「6-1」A、栈的基本操作

题目描述

栈:插入元素和删除元素只能在线性表的一端进行,所以遵循“先进后出 (LIFO) ”原则,其中插入和删除的一端称为栈顶 (top)。我们可以把栈比喻成一个箱子,只能在箱子的开口处放入和取出物体,而且是后放入的物体,会被先取出来。

输入格式

第 1 行一个整数 nn,表示有 nn 条关于 SS 的操作,在进行任何操作之前,SS 是空的。接来的 NN 行,每行 一个关于 SS 的操作,格式和含义如下:

clear:把栈置空。

empty:判断栈是否为空。

push(x):把整数 x 插入栈顶。

pop: 栈顶元素出栈。

top :获取栈顶元素的值。

输出格式

若干行,对应输入中的 top, pop 和 empty 操作:

对于 top 操作,输出一个整数,如果这个操作失败,则输出单词 error。

对于 pop 操作,如果这个操作失败,则输出单词 error。

对于 empty 操作,如果栈是空,则输出 empty,否则输出 not empty。

样例

样例输入

A.in

8
push 10
top
push 15
pop
top
clear
pop
empty

样例输出

A.out

10
10
error
empty

数据范围与提示

n20000 n \leq 20000

xxintint 范围内的整数