백준 10845 파이썬 (큐)

철웅·2022년 10월 6일
0

BOJ

목록 보기
6/46

문제 : https://www.acmicpc.net/problem/10845


💻 Code

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

n = int(input())
queue = deque()

for _ in range(n):
    command = input().split()

    if(command[0] == 'push'):
        queue.append(command[1])
    elif(command[0] == 'pop'):
        if(not queue):
            print(-1)
        else:
            print(queue.popleft())
    elif(command[0] == 'size'):
        print(len(queue))
    elif(command[0] == 'empty'):
        if(not queue):
            print(1)
        else:
            print(0)
    elif(command[0] == 'front'):
        if(not queue):
            print(-1)
        else:
            print(queue[0])
    elif(command[0] == 'back'):
        if(not queue):
            print(-1)
        else:
            print(queue[-1])

  • 파이썬답게 deque를 사용하였다
    -> 사용법
  • 솔직히 쓰면서 너무 if문 남발한거 같아 초짜같아가지고(초짜맞음) 다른 사람들거좀 뒤져봤다.
  if cmd == "pop":
          try:
              print(list.pop(0))
          except:
              print(-1)
  elif cmd == "back":
          try:
              print(list[-1])
          except:
              print(-1)
  • 다음부터는 try-except로 예외처리를 하는 센스를 발휘하자 (시간도 적게들더라)

0개의 댓글