문제
문제 이해
- 문제에 주어진 방식의 스택을 구현 (총 5개)
풀이
Deque 라이브러리 학습을 위해 List가 아닌 collections의 deque 라이브러리 사용
각 입력에 따른 결과를 나타낼 수 있도록 코딩
코드
sys.stdin.readline 함수는 일반적으로 input 함수보다 빠르기 때문에 2-3줄은 코딩 테스트에서 거의 필수로 적고 시작하는 코드이다. deq.append(end[2:-1]) 부분은 첫 부분의 명령어와 공백을 제외한 정수 부분을 인덱싱 한다.
from collections import deque
import sys
input = sys.stdin.readline
deq = deque()
N = int(input())
for i in range(N):
cmd = input()
if cmd[0] == '1':
deq.append(cmd[2:-1])
elif cmd[0] == '2':
if len(deq) == 0:
print(-1)
else:
print(deq.pop())
elif cmd[0] == '3':
print(len(deq))
elif cmd[0] == '4':
if len(deq) == 0:
print(1)
else:
print(0)
else:
if len(deq) == 0:
print(-1)
else:
print(deq[-1])
'알고리즘 연습 > 백준' 카테고리의 다른 글
[Python - 1051] 숫자 정사각형 (S3) (0) | 2024.06.17 |
---|---|
[Python - 1049] 기타줄 (S4) (0) | 2024.06.13 |
[Python - 1026] 보물 (S4) (0) | 2024.06.13 |
[Python - 17299] 오등큰수 (G3) (0) | 2024.05.24 |
[Python - 24511] queuestack (S3) (0) | 2024.05.21 |