[백준] 10828 스택
🦧출처
🦧개념
🔥 스택(stack)
스택은 데이터를 임시 저장할 때 사용하는 자료구조로, 후입선출(LIFO) 방식이다.
파이썬에는 기본적으로 스택이 구현되어 있지 않아 list를 활용한다.
스택에 데이터를 넣는 작업을 push라고 하며, list를 활용하기 때문에 list.append(a)를 활용한다.
이와 반대로 스택에 넣어진 데이터를 제거하는 작업을 pop이라 하며, list.pop(a)을 활용한다.
🔥 입력값 설정
input( )을 사용하게 되면 시간초과 에러가 뜨게 되므로,
import sys
n = int(sys.stdin.readline())
과 같이 입력해 시간을 단축해 준다.
🦧코드
🔥 나의 코드
import sys
n = int(sys.stdin.readline())
stack = []
for _ in range(n):
k = sys.stdin.readline().split()
if k[0] == 'push':
stack.append(k[1])
elif k[0] == 'pop':
if len(stack) > 0:
print(stack[-1])
del(stack[-1])
else:
print(-1)
elif k[0] == 'size':
print(len(stack))
elif k[0] == 'empty':
if len(stack) == 0:
print(1)
else:
print(0)
elif k[0] == 'top':
if len(stack) > 0:
print(stack[-1])
else:
print(-1)
Author And Source
이 문제에 관하여([백준] 10828 스택), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@nikevapormax/백준10828저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)