programmers.co.kr/learn/courses/30/lessons/42627/solution_groups?language=python3
def solution(jobs):
answer = 0
time = 0 # 현재까지 진행된 작업 시간
length = len(jobs)
jobs = sorted(jobs, key=lambda x: x[1]) # 소요시간 우선 정렬
while len(jobs) != 0:
for i in range(len(jobs)):
if jobs[i][0] <= time:
time += jobs[i][1]
answer += time - jobs[i][0]
jobs.pop(i)
break
# 해당시점에 아직 작업이 들어오지 않았으면 시간 ++
if i == len(jobs) - 1:
time += 1
return answer // length
res = solution([[0, 3], [1, 9], [2, 6]])
print(res)
'programmers 알고리즘 > 구현' 카테고리의 다른 글
42626번: 더 맵게 (힙) (0) | 2020.11.04 |
---|---|
42587번: 프린터 (0) | 2020.11.04 |
42583번: 다리를 지나는 트럭 (0) | 2020.11.04 |
기능개발 (스택/큐) (0) | 2020.11.04 |
주식가격 (스택/큐) (0) | 2020.11.03 |