여름의 서재
[프로그래머스] 디스크 컨트롤러 (파이썬) 본문
728x90
📕 문제
https://programmers.co.kr/learn/courses/30/lessons/42627
💡 풀이법
import heapq
def solution(jobs):
l = len(jobs)
heapq.heapify(jobs)
first = heapq.heappop(jobs)
time = first[0] + first[1]
answer = first[1]
while jobs:
ready = []
heapq.heapify(ready)
for i in jobs:
if time >= i[0]:
heapq.heappush(ready,i[::-1])
if ready == [] :
fast = heapq.heappop(jobs)
answer += fast[1]
time = fast[0] + fast[1]
else:
fast = heapq.heappop(ready)[::-1]
time += fast[1]
answer += time - fast[0]
jobs.remove(fast)
return answer // l
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 오픈 채팅방 (파이썬) (0) | 2022.01.07 |
---|---|
[프로그래머스] 보석 쇼핑 (파이썬) (0) | 2022.01.07 |
[프로그래머스] 표편집 (파이썬) (0) | 2022.01.07 |
[프로그래머스] 야근 지수 (파이썬) (0) | 2021.12.24 |
[프로그래머스] N으로 표현 (파이썬) (0) | 2021.12.24 |
Comments