[백준] 10828 스택 Python

BellBoy·2023년 5월 12일
0

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

import sys
from collections import deque

input = sys.stdin.readline

N = int(input())
deque_stack = deque()

while N:
    N -= 1

    text = input().rstrip('\n')

    if text.count(" ") > 0:
        text, number = text.split(" ")

    if text == 'push':
        deque_stack.append(number)

    if text == 'size':
        print(len(deque_stack))

    if text == 'top':
        if len(deque_stack) == 0:
            print(-1)
        else:
            print(deque_stack[-1])

    if text == 'empty':
        if len(deque_stack) == 0:
            print(1)
        else:
            print(0)

    if text == 'pop':
        if len(deque_stack) == 0:
            print(-1)
        else:
            print(deque_stack.pop())

시간 제한이 0.5초로 제한되어있어 속도가 빠른 deque를 사용했습니다
del 함수만 사용하지 않는다면 deque의 시간복잡도는 O(n)입니다
어렵지 않게 한번데 풀 수 있었습니다

profile
리액트러버

0개의 댓글