[백준/파이썬] 10866번

민정·2023년 7월 4일
0

[백준/파이썬]

목록 보기
147/245
post-thumbnail

📍백준 10866번 문제

https://www.acmicpc.net/problem/10866

코드

import sys
from collections import deque
input = sys.stdin.readline

n = int(input())
arr = deque()

for _ in range(n):
    temp = list(map(str, input().split()))
    com = temp[0]
    if len(temp) == 2:
        num = temp[1]
    arr_len = len(arr)
    if com == 'push_back':
        arr.append(num)
    elif com == 'push_front':
        arr.appendleft(num)
    elif com == 'front':
        if arr_len == 0:
            print(-1)
        else:
            print(arr[0])
    elif com == 'back':
        if arr_len == 0:
            print(-1)
        else:
            print(arr[-1])
    elif com == 'size':
        print(arr_len)
    elif com == 'empty':
        if (arr_len) == 0:
            print(1)
        else:
            print(0)
    elif com == 'pop_front':
        if (arr_len) == 0:
            print(-1)
        else:
            print(arr.popleft())
    elif com == 'pop_back':
        if (arr_len) == 0:
            print(-1)
        else:
            print(arr.pop())

풀이

deque를 이용하여 풀었다.
각각을 함수로 정의하기 귀찮아서 if문 내에서 다 구현했다.

profile
パㅔバ6ㅇr 덤벼ㄹΓ :-0

0개의 댓글