[10828번] 스택

HYEOB KIM·2022년 6월 3일
1

algorithm

목록 보기
22/44
post-custom-banner

백준 10828번 스택

코드 풀이

  • 문자열을 어떻게 파싱하냐가 고민이었는데, word = input().split()을 이용하면 word에 띄어쓰기를 기준으로 리스트 형태로 담깁니다.
    • 예를 들어, push 1word = ['push', '1']처럼 담기고, top의 경우 word = ['top']의 형태로 변수에 담깁니다.
import sys
input = sys.stdin.readline

n = int(input())
stack = []

for _ in range(n):
    word = input().split()

    if word[0] == 'push':
        stack.append(int(word[1]))
    elif word[0] == 'pop':
        if not stack:
            print(-1)
        else:
            print(stack.pop())
    elif word[0] == 'size':
        print(len(stack))
    elif word[0] == 'empty':
        if not stack:
            print(1)
        else:
            print(0)
    else:
        if not stack:
            print(-1)
        else:
            print(stack[-1])
profile
Devops Engineer
post-custom-banner

0개의 댓글