Algorithm/백준

[백준] 18258 큐2

sunnyshiny 2023. 7. 6. 11:23
728x90

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

 

18258번: 큐 2

첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지

www.acmicpc.net

    import sys
    from collections import deque

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

    for i in range(n):
        order = input().split()
        if order[0] == 'push':
            queue.append(order[1])
        elif order[0] == 'pop':
            print(queue.popleft() if len(queue)>0 else -1)
        elif order[0] == 'size':
            print(len(queue))
        elif order[0] == 'empty':
            print(1 if len(queue)==0 else 0)
        elif order[0] == 'front':
            print(queue[0] if len(queue)>0 else -1)
        elif order[0] == 'back':
            print(queue[-1] if len(queue)>0 else -1)


728x90