개발계발/알고리즘

[10866] 덱 #python

냥냥친구 2020. 9. 21. 23:36

백준 10866번 덱

내가 푼 코드

from collections import deque
import sys

input = sys.stdin.readline
num = int(input())
dq = deque(list())
for i in range(num):
    req = input().split(" ")
    if req[0] == "push_back":
        dq.append(req[1])
    elif req[0] == "push_front":
        dq.appendleft(req[1])
    elif req[0] == "pop_front":
        if len(dq) > 0: print(dq.popleft())
        else: print('-1')
    elif req[0] == "pop_back":
        if len(dq) > 0: print(dq.pop())
        else: print('-1')
    elif req[0] == "front":
        if len(dq) > 0: print(dq[0])
        else: print('-1')
    elif req[0] == "back":
        if len(dq) >0:print(dq[-1])
        else: print('-1')
    elif req[0] == "size":
        print(len(dq))
    elif req[0] == "empty":
        print(0 if len(dq) > 0 else 1)

시간 초과 한 번 발생했으나 sys.input 사용하여 쉽게 해결했다.

'개발계발 > 알고리즘' 카테고리의 다른 글

[1406] 에디터 #python  (0) 2020.09.21
[11660] 구간 합 구하기5 #python  (0) 2020.09.21
[10845] 큐 #python  (0) 2020.09.21
[10815] 숫자 카드 #python  (0) 2020.09.21
[10799] 쇠막대기 #python  (0) 2020.09.21