코딩테스트
스택과 큐2. 백준10845번 큐
Giant Oreo
2021. 5. 11. 18:48
import sys
input = sys.stdin.readline
n = int(input())
queue = []
for _ in range(n):
c = input().split()
if c[0]=='push':
queue.insert(0,int(c[1]))
elif c[0]=='pop':
if not queue :
print(-1)
else:
print(queue.pop())
elif c[0]=='size':
print(len(queue))
elif c[0]=='empty':
if not queue:
print(1)
else:
print(0)
elif c[0]=='front':
if not queue:
print(-1)
else:
print(queue[len(queue)-1])
elif c[0]=='back':
if not queue:
print(-1)
else:
print(queue[0])
큐는 스택과 다르게 양쪽이 뚫려있기 때문에 front쪽에서 가장 먼저 들어간 데이터를 뽑을 수 있고, back쪽에서 원소를 넣을 수 있다. 그렇기 때문에 front명령을 하면 리스트의 가장 뒤쪽에 위치한 원소가 출력되야 한다.