https://programmers.co.kr/learn/courses/30/lessons/12927
heapq를 활용해서 매번 정렬하지 않고 풀면 통과한다.
나의 풀이
import heapq
def solution(n, works):
q = []
for work in works:
heapq.heappush(q,-work)
for _ in range(n):
if q:
t = heapq.heappop(q)
if t !=-1:
heapq.heappush(q,t+1)
return sum(list(map(lambda x: x**2,q)))
'Programming > Programmers' 카테고리의 다른 글
[프로그래머스] 최고의 집합 (Python) (0) | 2021.11.13 |
---|---|
[프로그래머스] 줄 서는 방법 (Python) (0) | 2021.11.13 |
[프로그래머스] 멀리 뛰기(Python) (0) | 2021.11.13 |
[프로그래머스] 거스름돈 (Python) (0) | 2021.11.13 |
[프로그래머스] 가장 긴 팰린드롬 (Python) (0) | 2021.11.12 |
댓글