반응형
https://www.acmicpc.net/problem/10866
import sys
from collections import deque
d = deque()
for i in range(int(sys.stdin.readline())):
x = sys.stdin.readline().split()
if x[0] == "push_back":
d.append(x[1])
elif x[0] == "push_front":
d.appendleft(x[1])
elif x[0] == "pop_front":
if len(d) == 0:
print(-1)
else:
print(d.popleft())
elif x[0] == "pop_back":
if len(d) == 0:
print(-1)
else:
print(d.pop())
elif x[0] == "size":
print(len(d))
elif x[0] == "empty":
if len(d) == 0:
print(1)
else:
print(0)
elif x[0] == "front":
if len(d) == 0:
print(-1)
else:
print(d[0])
elif x[0] == "back":
if len(d) == 0:
print(-1)
else:
print(d[len(d)-1])
deque()를 이해하면 스택이나 큐처럼 쉽게 접근할 수 있는 문제였다.
deque()를 사용할때는
from collections import deque 를
항상 선언해야하고 ,쉽게 라이브러리 라고 생각하면 된다.
반응형
'BOJ > Python' 카테고리의 다른 글
백준 1920번 수 찾기 파이썬 (2) | 2022.01.14 |
---|---|
백준 18406번 럭키 스트레이트 파이썬 (0) | 2022.01.12 |
백준 9506번 약수들의 합 파이썬 (0) | 2022.01.10 |
백준 2750번 수 정렬하기 파이썬 (0) | 2022.01.09 |
백준 1453번 피시방 알바 파이썬 (0) | 2022.01.08 |