(Lv.01) 명예의 전당(1)👾
https://school.programmers.co.kr/learn/courses/30/lessons/138477
def solution(k, score):
answer=[]
answer.append(score[0])
l=[score[0] for _ in range(k)]
for i in range(1,len(score)):
if l[0]<score[i]:
l.pop(0)
l.append(score[i])
print(l)
l.sort()
answer.append(l[0])
else:
answer.append(l[0])
return answer
sort() 함수를 계속 호출해서 시간 복잡도 증가로 실패🥲
import heapq
def solution(k, score):
answer = []
l = []
for i in range(len(score)):
if len(l) < k:
heapq.heappush(l, score[i])
else:
if l[0] < score[i]:
heapq.heappop(l) #힙에서 가장 작은 점수를 제거
heapq.heappush(l, score[i])
answer.append(l[0])
return answer