본문 바로가기
Algorithm/백준 BOJ

[백준] [Python] #10828 스택

by 은세라 2021. 9. 23.

오늘도 평화로운 알고리즘,,,

스택 정도야! 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의 길은 멀고도 험하다

댓글