from collections import deque
import sys
input = sys.stdin.readline
n = int(input())
dq = deque()
for _ in range(n):
command = list(input().split())
if command[0] == 'push_front':
dq.appendleft(command[1])
elif command[0] =='push_back':
dq.append(command[1])
elif command[0] =='pop_front':
if len(dq) > 0:
print(dq.popleft())
else:
print(-1)
elif command[0] =='pop_back':
if len(dq) > 0:
print(dq.pop())
else:
print(-1)
elif command[0] =='size':
print(len(dq))
elif command[0] == 'empty':
if len(dq) > 0:
print(0)
else:
print(1)
elif command[0] =='front':
if len(dq) > 0:
print(dq[0])
else:
print(-1)
else:
if len(dq) > 0:
print(dq[-1])
else:
print(-1)
# popleft / appendleft -> 덱을 이용함
# 덱 사용을 위해서는 dq(변수명) = deque()를 해주어야 한다.
'문제풀이 > 백준(Boj) 문제풀이' 카테고리의 다른 글
[백준][큐 & 덱] 1021. 회전하는 큐 (파이썬/Python) (0) | 2021.12.09 |
---|---|
[백준][큐 & 덱] 5430. AC (파이썬/Python) (0) | 2021.12.07 |
[백준][큐 & 덱] 1966. 프린터 큐 (파이썬/Python) (0) | 2021.12.06 |
[백준][동적 계획법/DP] 11052. 카드 구매하기 (0) | 2021.12.03 |
[백준][동적 계획법/DP] 9095. 1, 2, 3 더하기 (0) | 2021.12.03 |