Algorithm/백준 BOJ
[백준] [Python] #10828 스택
은세라
2021. 9. 23. 02:06
오늘도 평화로운 알고리즘,,,
스택 정도야! First In Last Out 이제 안다 이거야~ 이정도는 금방이지~
n = int(input())
stack = []
def push(x):
stack.append(x)
def pop():
if len(stack) == 0: print(-1)
else: print(stack.pop(-1))
def size():
print(len(stack))
def empty():
if len(stack) == 0: print(1)
else: print(0)
def top():
if len(stack) == 0: print(-1)
else: print(stack[-1])
for _ in range(n):
odr = list(map(str, input().split()))
if odr[0] == 'push': push(int(odr[1]))
elif odr[0] == "pop": pop()
elif odr[0] == "size": size()
elif odr[0] == "empty" : empty()
elif odr[0] == "top" : top()
아 넘모 깔끔해~ 이정도면 통과 무족권이지~
믿을 수 없는 결과에 설마 input받을 때 switch문을 써야하나? 하고 찾아보니
그래서 갓구글께 여쭤보니 역시 나같은 어린 양을 위한 구세주가 계셨다.
import sys
input=sys.stdin.readline
# 주의할 점은 숫자가 아닌 문자열로 입력을 받는 경우엔 줄바꿈(\n)까지 입력으로 받으니
# input().strip() 을 사용하거나 input().strip().split() 을 사용하시는게 좋습니다.
동일한 코드에 위 2줄 추가하니 바아로 해결,,,
input의 길은 멀고도 험하다