栈
作者:
成理第一深情
,
2024-01-07 19:49:57
,
所有人可见
,
阅读 59
Acwing 828.模拟栈
stk = [0] * 100010 # 存储栈的元素
tt = 0 # 维护栈顶,初始时为0,表示栈为空,tt指向的是当前栈顶的元素
def push(x):
"""
向栈顶加入一个元素x
"""
global stk, tt
tt += 1
stk[tt] = x
def pop():
"""
从栈顶弹出一个数
"""
global stk, tt
tt -= 1
def empty():
"""
判断栈是否为空
"""
global stk, tt
if tt <= 0:
return 1
return 0
def query():
"""
查询栈顶的元素
"""
global stk, tt
return stk[tt]
if __name__ == "__main__":
m = int(input())
for i in range(m):
opt = input().split(' ')
if opt[0] == "push":
x = int(opt[1])
push(x)
elif opt[0] == "query":
print(query())
elif opt[0] == "pop":
pop()
else:
if empty():
print("YES")
else:
print("NO")