덱 [ Python ] [ 백준 : 10866 ]
2023. 5. 26. 21:36ㆍ알고리즘/백준
풀이 및 회고
파이썬의 deque 패키지를 사용하면 쉽게 구현할 수 있었다.
# 덱
# https://docs.python.org/3/library/collections.html#collections.deque
from collections import deque
import sys
n = int(input())
q= deque()
for i in range(n):
data = list(sys.stdin.readline().split())
if data[0] == "push_front":
q.appendleft(data[1])
elif data[0] == 'push_back':
q.append(data[1])
elif data[0] == 'pop_front':
if len(q):
print(q.popleft())
else:
print(-1)
elif data[0] == 'pop_back':
if len(q):
print(q.pop())
else:
print(-1)
elif data[0] == 'size':
print(len(q))
elif data[0] == 'empty':
print(int(bool(not q)))
elif data[0] == 'front':
if len(q):
print(q[0])
else:
print(-1)
elif data[0] == 'back':
if len(q):
print(q[-1])
else:
print(-1)
'알고리즘 > 백준' 카테고리의 다른 글
약수 [ Python ] [ 백준 : 1037 ] (0) | 2023.05.27 |
---|---|
요세푸스 문제 0 [ Python ] [ 백준 : 11866 ] (0) | 2023.05.26 |
소수 찾기 [ Python ] [ 백준 : 1978 ] (1) | 2023.05.26 |
영화감독 숌 [ Python ] [ 백준 : 1436 ] (0) | 2023.05.25 |
거스름돈 [ Python ] [ 백준 : 14916 ] (0) | 2023.05.25 |