https://www.acmicpc.net/problem/10866
import sys
from collections import deque
input = sys.stdin.readline
n = int(input())
arr = deque()
for _ in range(n):
temp = list(map(str, input().split()))
com = temp[0]
if len(temp) == 2:
num = temp[1]
arr_len = len(arr)
if com == 'push_back':
arr.append(num)
elif com == 'push_front':
arr.appendleft(num)
elif com == 'front':
if arr_len == 0:
print(-1)
else:
print(arr[0])
elif com == 'back':
if arr_len == 0:
print(-1)
else:
print(arr[-1])
elif com == 'size':
print(arr_len)
elif com == 'empty':
if (arr_len) == 0:
print(1)
else:
print(0)
elif com == 'pop_front':
if (arr_len) == 0:
print(-1)
else:
print(arr.popleft())
elif com == 'pop_back':
if (arr_len) == 0:
print(-1)
else:
print(arr.pop())
deque를 이용하여 풀었다.
각각을 함수로 정의하기 귀찮아서 if문 내에서 다 구현했다.