728x90
https://www.acmicpc.net/problem/10866
10866번: 덱
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지
www.acmicpc.net
from collections import deque
import sys
deq = deque()
n = int(input())
result = []
for i in range(n):
s = input()
if s[0] == "p":
if s[:5] == "pop_f":
if len(deq) > 0:
result.append(deq.popleft())
else:
result.append(-1)
elif s[:5] == "pop_b":
if len(deq) > 0:
result.append(deq.pop())
else:
result.append(-1)
elif s[:6] == "push_f":
deq.appendleft(s[11:])
else:
deq.append(s[10:])
elif s[0] == "s":
result.append(len(deq))
elif s[0] == "e":
if len(deq) == 0:
result.append(1)
else:
result.append(0)
elif s[0] == "f":
if len(deq) > 0:
result.append(deq[0])
else:
result.append(-1)
else:
if len(deq) > 0:
result.append(deq[-1])
else:
result.append(-1)
for i in result:
print(i)
반응형
'전.py' 카테고리의 다른 글
[python] 백준 10828 스택 (0) | 2022.01.24 |
---|---|
[python] 백준 10845 큐 (0) | 2022.01.24 |
[python] 백준 11866 요세푸스 문제 0 (0) | 2022.01.24 |
[python] 백준 2751 수 정렬하기 2 (0) | 2022.01.24 |
[python] 백준 11650 좌표 정렬하기 (0) | 2022.01.24 |