728x90
반응형
큐 문제이다. 10845번 큐와 같은 문제이다.
이 문제는 collections.deque와 sys.stdin.readline을 사용해서 풀지 않으면 시간 초과가 나온다. 주의하자.
import sys
from collections import deque
class Queue():
def __init__(self):
self.li = deque()
def push(self, n):
self.li.append(n)
def pop(self):
print(self.li.popleft() if self.li else -1)
def size(self):
print(len(self.li))
def empty(self):
print(0 if self.li else 1)
def front(self):
print(self.li[0] if self.li else -1)
def back(self):
print(self.li[-1] if self.li else -1)
queue = Queue()
for _ in range(int(sys.stdin.readline())):
s = sys.stdin.readline().split()
if s[0] == "push":
queue.push(int(s[1]))
elif s[0] == "pop":
queue.pop()
elif s[0] == "size":
queue.size()
elif s[0] == "empty":
queue.empty()
elif s[0] == "front":
queue.front()
elif s[0] == "back":
queue.back()
728x90
반응형
'Agorithm > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 15828번 Router(python) (0) | 2021.03.06 |
---|---|
백준 알고리즘 12789번 도키도키 간식드리미(python) (0) | 2021.03.06 |
백준 알고리즘 1158번 요세푸스 문제(python) (0) | 2021.03.06 |
백준 알고리즘 18111번 마인크래프트 (python) (0) | 2021.03.06 |
백준 알고리즘 2504번 괄호의 값(python) (0) | 2021.03.06 |