본문 바로가기
Problem Solving

[백준] 10845 큐 python 알고리즘 문제

by DuncanKim 2022. 4. 24.
728x90

문제 10845. 큐

 

1. 나의 코드와 발상 과정

import sys
from collections import deque

n = int(input())
queue = deque()
for _ in range(n):
    order = sys.stdin.readline().strip()
    if order[0:4] == 'push':
        queue.appendleft(int(order[5:]))
    elif order[0:5] == 'front':
        if not queue: 
            print(-1)
        else:
            print(queue[-1])   
    elif order[0:4] == 'back':
        if not queue:
            print(-1)
        else:
            [print(queue[0])]
    elif order[0:4] == 'size':
        print(len(queue))
    elif order[0:5] == 'empty':
        if len(queue) == 0:
            print(1)
        else:
            print(0)
    else:
        if not queue:
            print(-1)
        else:
            print(queue.pop())

10828 스택 문제를 거의 비슷하게 구현했다.

deque를 import해서 쓰는 차이가 있다.

 

 

 

문제출처

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

728x90

댓글