[백준] 덱 10866번 파이썬 Python 자료구조

Jeony·2021년 10월 11일
0

백준

목록 보기
8/25
post-thumbnail

📌문제 접근

문제의 제목대로 데크를 사용해서 문제를 수월하게 풀 수 있다.

데크 deque 설명글

📌내가 작성한 코드

from collections import deque
import sys

d = deque()
n = int(input())

for i in range(n):
    command = sys.stdin.readline().split()

    if command[0] == "push_front":
        d.appendleft(command[1])
    elif command[0] == "push_back":
        d.append(command[1])
    elif command[0] == "pop_front":
        if d:
            print(d[0])    
            d.popleft()
        else:
            print("-1")
    elif command[0] == "pop_back":
        if d:
            print(d[len(d) - 1])    
            d.pop()
        else:
            print("-1")
    elif command[0] == "size":
        print(len(d))
    elif command[0] == "empty":
        if d:
            print("0")
        else:
            print("1")
    elif command[0] == "front":
        if d:
            print(d[0])
        else:
            print("-1")
    elif command[0] == "back":
        if d:
            print(d[len(d) - 1])
        else:
            print("-1")

📌풀이

push_front일 때
appendleft() 함수를 이용.

pop_front일 때
popleft() 함수를 이용.

profile
알고리즘으로 문제를 해결하다가 포기함

0개의 댓글