https://www.acmicpc.net/problem/22234
틀린코드 - 런타임에러
원인을 모르겠음
import sys
from collections import deque
from queue import PriorityQueue
input = sys.stdin.readline
print = sys.stdout.write
N, T, W = map(int, input().split())
p, t = map(int, input().split())
pq = PriorityQueue()
queue = deque([(0, p, t)])
M = int(input())
for i in range(M):
pi, ti, ci = map(int, input().split())
pq.put((ci, pi, ti))
answer = []
w = 0
while w < W:
if not queue:
break
cur = queue.popleft()
cx, px, tx = cur
consume = min(tx, T)
for _ in range(consume):
if w < W:
print(f"{px}\n")
w += 1
else:
break
while not pq.empty():
temp = pq.get()
c, p, t = temp
if c > w:
pq.put(temp)
break
if c <= w:
queue.append((c, p, t))
remain = tx - consume
if remain > 0:
queue.append((cx, px, remain))
참고 풀이
https://velog.io/@machamy/BOJ-3-22234-%EA%B0%80%ED%9D%AC%EC%99%80-%EC%9D%80%ED%96%89-py
728x90
'코테 > 코딩테스트 대비 Python' 카테고리의 다른 글
최대공약수 python (0) | 2023.11.26 |
---|---|
백준 감시 (0) | 2023.11.15 |
LCS 설명 & 파이썬 코드 (0) | 2023.11.06 |
백준 스타트 택시 (0) | 2023.05.25 |
백준 마법사 상어와 파이어볼 Python (0) | 2023.05.22 |