알고리즘 & 코딩테스트

[백준] 10828번 스택

Haksae 2022. 3. 7. 17:38

⛏ 문제 파악

  • 스택을 직접 간단하게 구현보는 문제
  • 큰 어려움은 없지만 제한 시간이 짧은 문제이다.

👉🏻  답안

import sys
N = int(sys.stdin.readline())

stack = []

for _ in range(N):

  x = sys.stdin.readline().split()

  if x[0] == "push":
    stack.append(x[1])

  elif x[0] == "pop":
    if len(stack) != 0:
      print(stack.pop())
    else :
      print(-1)

  elif x[0] == "size":
    print (len(stack))

  elif x[0] == "empty":
    if len(stack) == 0:
      print(1)
    else:
      print(0)

  elif x[0] == "top":
    if len(stack) != 0:
      print(stack[-1])
    else:
      print(-1)

📑  간단한 설명

  • 제한 시간때문에 시간을 조금이라도 아낄려고 시스템 스탠다드 인풋을 쓴 것 외에는 별 다른 것이 없다.