import sys
input=sys.stdin.readline
from collections import deque
n=int(input())
queue = deque()
for i in range(n):
a=input().split()
if a[0]=="pop_front":
if len(queue)==0:
print(-1)
else:
print(queue.popleft())
elif a[0]=="pop_back":
if len(queue)==0:
print(-1)
else:
print(queue.pop())
elif a[0]=="size":
print(len(queue))
elif a[0]=="empty":
if len(queue)==0:
print(1)
else:
print(0)
elif a[0]=="front":
if len(queue)==0:
print(-1)
else:
print(queue[0])
elif a[0]=="back":
if len(queue)==0:
print(-1)
else:
print(queue[-1])
elif a[0]=="push_front":
queue.appendleft(a[1])
elif a[0]=="push_back":
queue.append(a[1])
import sys
input=sys.stdin.readline
N=int(input())
X=[]
for _ in range(N) :
A=list(input().split())
if A[0]=="push_front" :
X=[int(A[1])]+X
elif A[0]=="push_back" :
X.append(A[1])
elif A[0]=="pop_front" :
if len(X)==0 : print(-1)
else :
print(X[0])
X.pop(0)
elif A[0]=="pop_back" :
if len(X)==0 : print(-1)
else :
print(X[-1])
X.pop(-1)
elif A[0]=="size" : print(len(X))
elif A[0]=="empty" :
if len(X)!=0 : print(0)
else : print(1)
elif A[0]=="front" :
if len(X)==0 : print(-1)
else : print(X[0])
elif A[0]=="back" :
if len(X)==0 : print(-1)
else : print(X[-1])
리스트에서
큐/덱 에서
큐 : from collections import deque
리스트에서 왼쪽 push : 본래 리스트에 push할 값 + 리스트 : X=[]+X
여러개의 input 중 몇 개만 공백이 있을 때 구분 : a=문자열.split() 하면 자동으로 a[0]과 a[1]이 구분됨