https://www.acmicpc.net/problem/10866
10866번: 덱
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지
www.acmicpc.net
1. 소스코드
import sys
from collections import deque
N=int(sys.stdin.readline())
d=deque()
for i in range(N):
word=sys.stdin.readline().split()
order=word[0]
if order=="push_front":
d.appendleft(word[1])
elif order=="push_back":
d.append(word[1])
elif order=="pop_front":
if len(d)==0:
print(-1)
else:
print(d.popleft())
elif order=="pop_back":
if len(d)==0:
print(-1)
else:
print(d.pop())
elif order=="size":
print(len(d))
elif order =="empty":
if len(d)==0:
print(1)
else:
print(0)
elif order=="front":
if len(d)==0:
print(-1)
else:
print(d[0])
elif order=="back":
if len(d)==0:
print(-1)
else:
print(d[-1])
'백준문제풀이' 카테고리의 다른 글
[백준 문제풀이] 1935번 : 후위 표기식2 (0) | 2021.07.17 |
---|---|
[백준 문제풀이] 10799번 : 쇠막대기 (0) | 2021.07.16 |
[백준 문제풀이] 1158번 : 요세푸스 (0) | 2021.07.16 |
[백준 문제풀이] 10845번 : 큐 (0) | 2021.07.15 |
[백준 문제풀이] 1406번 : 에디터 (0) | 2021.07.15 |