import sys
from collections import deque
test = int(sys.stdin.readline())
queue = deque()
def empty():
if len(queue)==0:
return 1
else :
return 0
for _ in range(test):
wn = list(sys.stdin.readline().split())
if wn[0] == 'push_front':
queue.appendleft(wn[1])
elif wn[0] =='push_back':
queue.append(wn[1])
elif wn[0] == 'pop_front':
if(empty()):
print("-1")
else :
print(queue.popleft())
elif wn[0] == 'pop_back':
if(empty()):
print("-1")
else :
print(queue.pop())
elif wn[0] == 'size':
print(len(queue))
elif wn[0] == 'empty':
if(empty()):
print("1")
else :
print("0")
elif wn[0] == 'front':
if(empty()):
print("-1")
else :
print(queue[0])
elif wn[0] == 'back':
if(empty()):
print("-1")
else :
print(queue[-1])
덱에 대한 기본 문제이다.
다만 파이썬이 짱짱이라는것이다.. 이 모든게 라이브러리 내장함수로 해결 가능하다니 대박 ㅜㅜ
쨌든 ! 파이썬의 덱 내장함수들을 사용하는 법을 배울 수 있는 좋은 문제이다.
여기서 주의해야할점은 바로 입력받을 때 인데
이 입력을 리스트로 입력받음으로써 문제를 해결 할 수 있다 !
처음에는 문자와 숫자를 따로 입력받게 하였으나 그렇게 하면 문제에서 요구하는 입력형식이 나오지 않아 골치아팠는데 알아보니 리스트로 입력받아서 활용할수있는 테크닉이 있는것이다..! 대박 !!
이렇게 하나하나 배워가는 코린이닷...!