반응형
문제설명
https://www.acmicpc.net/problem/10828
사고과정
- 입력을 받을 때마다 출력시켜야 하므로 for loop 안에서 바로 출력하도록 했다.
- 그냥 input()을 사용하면 시간 초과 에러가 발생한다. 주어지 시간 범위도 0.5초 밖에 안된다.. 그래서 sys 라이브러리를 사용했다
- 나머지는 문제에서 설명해준 대로 구현하면 된다.
- 다시 기초부터 시작..!
풀이
import sys
input = sys.stdin.readline
n = int(input())
stack = []
for _ in range(n):
orders = input().split()
# push
if len(orders) > 1:
stack.append(int(orders[1]))
else:
# pop
if orders[0] == 'pop':
if len(stack) == 0:
print(-1)
else:
print(stack.pop())
# size
if orders[0] == 'size':
print(len(stack))
# empty
if orders[0] == 'empty':
if len(stack) == 0:
print(1)
else:
print(0)
# top
if orders[0] == 'top':
if len(stack) == 0:
print(-1)
else:
print(stack[-1])
반응형
'알고리즘 삽질장' 카테고리의 다른 글
[BOJ] 9012번 - 괄호 (0) | 2021.10.23 |
---|---|
[BOJ] 9093번 - 단어 뒤집기 (0) | 2021.10.23 |
[이코테] BFS - 블록 이동하기 (0) | 2021.10.23 |
[이코테] DFS/BFS - 인구 이동 (0) | 2021.10.21 |
[이코테] 구현 - 외벽 점검 (0) | 2021.10.21 |