반응형
10866번: 덱
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 ��
www.acmicpc.net
from collections import deque
import sys
que = deque([])
N = int(sys.stdin.readline())
for _ in range(N):
x = sys.stdin.readline()[:-1]
if x.split()[0] == 'push_back':
que.append(x.split()[1])
elif x.split()[0] == 'push_front':
que.reverse()
que.append(x.split()[1])
que.reverse()
elif x == 'pop_front':
if len(que) != 0:
print(que.popleft())
else: print(-1)
elif x == 'pop_back':
if len(que) != 0:
print(que.pop())
else:
print(-1)
elif x == 'size':
print(len(que))
elif x == 'empty':
if len(que) == 0:
print(1)
else:
print(0)
elif x == 'front':
if len(que) == 0:
print(-1)
else:
print(que[0])
elif x == 'back':
if len(que) == 0:
print(-1)
else:
print(que[-1])
반응형
'백준 문제풀이' 카테고리의 다른 글
baekjoon - python - 16394 (0) | 2020.09.20 |
---|---|
baekjoon - python - 16170 (0) | 2020.09.20 |
baekjoon - python - 11653 (0) | 2020.09.16 |
baekjoon - python - 1037 (0) | 2020.09.16 |
baekjoon - python - 5086 (0) | 2020.09.16 |
댓글