티스토리 뷰
728x90
반응형
문제
코드
import sys
from collections import deque
N = int(input())
queue = deque()
def push(X):
queue.append(X)
def pop():
if not queue:
return -1
return queue.popleft()
def size():
return len(queue)
def empty():
if queue:
return 0
else:
return 1
def front():
if not queue:
return -1
return queue[0]
def back():
if not queue:
return -1
return queue[-1]
for i in range(N):
a=sys.stdin.readline().split()
if a[0] == 'push':
push(int(a[1]))
elif a[0] == 'pop':
print(pop())
elif a[0] == 'size':
print(size())
elif a[0] == 'empty':
print(empty())
elif a[0] == 'front':
print(front())
elif a[0] == 'back':
print(back())
코드설명
큐를 직접 구현하는 문제인데 입력을 sys로 바꿔도 시간초과가 나서 어쩔 수 없이 deque을 import해서 leftpop()을 통해 시간초과를 해결해 풀었다.
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1260번 DFS와 BFS (Python) (0) | 2021.03.14 |
---|---|
[백준] 4949번 균형잡힌 세상 (Python) (0) | 2021.03.14 |
[백준] 9012번 괄호 (Python) (1) | 2021.03.13 |
[백준] 10828번 스택 (Python) (0) | 2021.03.13 |
[백준] 1010번 다리 놓기 (Python) (0) | 2021.03.13 |
댓글