처음에 시간 초과가 나버렸다 ...!
import sys
input = sys.stdin.readline
n = int(input())
queue = []
for _ in range(n):
command = list(map(str, input().split()))
if command[0] == 'push':
queue.append(int(command[1]))
elif command[0] == 'pop':
if len(queue) == 0:
print(-1)
else:
print(queue.pop(0))
elif command[0] == 'size':
print(len(queue))
elif command[0] == 'empty':
if len(queue) == 0:
print(1)
else:
print(0)
elif command[0] == 'front':
if len(queue) == 0:
print(-1)
else:
print(queue[0])
else:
if len(queue) == 0:
print(-1)
else:
print(queue[-1])
자자 큐 구현할 때는 자나깨나 collection의 deque로 구현하기!
리스트로 구현하면 뭐다?
시간 초과 난다 ~
import sys
from collections import deque
input = sys.stdin.readline
n = int(input())
queue = deque([])
for i in range(n):
com = input().split()
if com[0] == 'push':
queue.append(com[1])
elif com[0] == 'pop':
if len(queue) == 0:
print(-1)
else:
print(queue.popleft())
elif com[0] == 'size':
print(len(queue))
elif com[0] == 'empty':
if len(queue) == 0:
print(1)
else:
print(0)
elif com[0] == 'front':
if len(queue) == 0:
print(-1)
else:
print(queue[0])
elif com[0] == 'back':
if len(queue) == 0:
print(-1)
else:
print(queue[-1])
출처: https://imzzan.tistory.com/4
deque 사용 방법 참고!