10866(덱) : 자료구조(python)

지환·2023년 10월 16일
0

백준(python)

목록 보기
59/67
post-thumbnail

출처 | https://www.acmicpc.net/problem/10866

코드


import sys
from collections import deque
input = sys.stdin.readline
n = int(input())
queue = deque([])

for i in range(n):
  com = input().split()
  if com[0] == "push_front":
    queue.appendleft(com[1])
  
  elif com[0] == "push_back":
    queue.append(com[1])
  
  elif com[0] == "pop_front":
    if len(queue) > 0:
      print(queue.popleft())
    else:
      print(-1)
    
  elif com[0] == "pop_back":
    if len(queue) > 0:
      print(queue.pop())
    else:
      print(-1)
  
  elif com[0] == "size":
    print(len(queue))
  
  elif com[0] == "empty":
    if len(queue) > 0:
      print(0)
    else:
      print(1)
  elif com[0] == "front":
    if len(queue) > 0:
      print(queue[0])
    else:
      print(-1)


  elif com[0] == "back":
    if len(queue) > 0:
      print(queue[-1])
    else:
      print(-1)



  1. 우선 덱에 대한 공부를 먼저 하고 -> 각 요구사항에 맞게 구현하면 된다.
profile
아는만큼보인다.

0개의 댓글