久违的更新,主包也是终于回到家里了
输入样例
10
push 6
empty
query
pop
empty
push 3
push 4
pop
query
push 6
输出样例
NO
6
YES
4
解决代码(今天没写笔记了,题目比较简单,可以仿写之前写过的模拟栈)
class Queue:
def __init__(self):
self.queue = []
def push(self, x):
self.queue.append(x)
def pop(self):
if not self.queue:
return "queue is empty"
return self.queue.pop(0) #头部弹出
def query(self):
if not self.queue:
return "queue is empty"
return self.queue[0]
def is_empty(self):
return "YES" if not self.queue else "NO"
def main():
import sys
input = sys.stdin.readline
m = int(input().strip())
queue = Queue()
output = []
for _ in range(m):
parts = input().split()
if not parts:
continue # 跳过空行
op = parts[0]
if op == 'push':
if len(parts) < 2:
output.append("error: missing value")
continue
try:
x = int(parts[1])
queue.push(x)
except ValueError:
output.append("error: invalid number")
elif op == 'pop':
res = queue.pop()
if res == "queue is empty":
output.append(res)
# pop 成功,不输出
elif op == 'query':
res = queue.query()
output.append(str(res))
elif op == 'empty':
output.append(queue.is_empty())
print('\n'.join(output)) # 统一输出结果
if __name__ == "__main__":
main()
算是一个回顾题吧