728x90
SMALL
문제
https://www.acmicpc.net/problem/10845
10845번: 큐
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지
www.acmicpc.net
풀이
import sys
from collections import deque
queue=deque([])
N = int(sys.stdin.readline())
for _ in range(N):
command=sys.stdin.readline()
if 'push' in command:
num=int(command.split(' ')[1])
queue.append(num)
elif 'pop' in command:
if len(queue)==0:
print(-1)
else:
print(queue.popleft())
elif 'size' in command:
print(len(queue))
elif 'empty' in command:
print(0 if len(queue) > 0 else 1)
elif 'front' in command:
if len(queue)==0:
print(-1)
else:
print(queue[0])
elif 'back' in command:
if len(queue)==0:
print(-1)
else:
print(queue[-1])
원래 queue를 import해서 사용하려고 했는데 front, back 구현을 못해서 deque로 구현했다.
queue로는 구현할수없는지 궁금.. 🤔
728x90
LIST
'코테공부 > python 백준' 카테고리의 다른 글
파이썬 백준 9012번 : 괄호 (0) | 2024.03.24 |
---|---|
파이썬 백준 10866번 : 덱 (0) | 2024.03.24 |
파이썬 백준 10828 : 스택 (0) | 2024.03.24 |
파이썬 백준 10814 : 나이순 정렬 (0) | 2024.03.19 |
파이썬 백준 2751: 수 정렬하기 (0) | 2024.03.19 |