코딩코딩코딩

백준(BAEKJOON) 10828 스택 - 파이썬(python) 본문

파이썬/Algorithms

백준(BAEKJOON) 10828 스택 - 파이썬(python)

hanshow113 2021. 12. 24. 01:55

 

보통 python stack을 구현하는 연습을 할 때 대부분 class 를 이용하여 구현하기 때문에 이 문제의 경우 처음에 어떻게 접근해야 하는지 헷갈렸음.

 

* input() 메서드를 사용할 경우 시간초과 되기 때문에 유의

sys.stdin 사용 방법

https://hansuho113.tistory.com/26 참고

 

 

import sys
stack = []

for i in range(int(sys.stdin.readline())):
    order = sys.stdin.readline().split()
    if order[0] == "push":
        stack.append(order[1])
    if order[0] == "pop":
        if len(stack) == 0:
            print(-1)
        else:
            print(stack.pop())
    if order[0] == "size":
        print(len(stack))
    if order[0] == "empty":
        if len(stack) == 0:
            print(1)
        else:
            print(0)
    if order[0] == "top":
        if len(stack) == 0:
            print(-1)
        else:
            print(stack[-1])
Comments