즐거운 PS 👩‍💻🥰

[백준-파이썬] 10828: 스택

dalin❤️ 2021. 11. 4. 22:53

문제로 ~

스택을 구현하는 문제이다!
파이썬 list의 메서드들(append, pop, len, S[-1] 등)로 풀면, 시간 초과가 나온다ㅠ

import sys

input = sys.stdin.readline

N = int(input())
S = [0] * (10001)
idx = -1
for i in range(N):
    command = input().strip()

    if command == "pop":
        if idx == -1:
            print(-1)
        else:
            print(S[idx])
            idx -= 1

    elif command == "size":
        print(idx + 1)

    elif command == "empty":
        if idx == -1:
            print(1)
        else:
            print(0)

    elif command == "top":
        if idx == -1:
            print(-1)
        else:
            print(S[idx])

    else:  # push
        command, num = command.split()
        idx += 1
        S[idx] = num
728x90