본문 바로가기

알고리즘 코드리뷰/파이썬

5. 프로그래머스_더맵게

소스 : https://github.com/diqksrk/AlgorithmPrac/blob/master/programmers/programmers_scouvile.py

 

GitHub - diqksrk/AlgorithmPrac

Contribute to diqksrk/AlgorithmPrac development by creating an account on GitHub.

github.com

 

1. import heapq as pq

2. pq.heapify(scoville)

3. lowestFoodScovile = pq.heappop(scoville)

4. pq.heappush(scoville, lowestFoodScovile + pq.heappop(scoville) * 2)

 

1. heapq?

힙은 특정한 규칙을 가지는 트리로, 최댓값과 최솟값을 찾는 연산을 빠르게 하기 위해 고안된 완전이진트리를 기본으로 한다. 

힙 함수 활용하기

  • heapq.heappush(heap, item) : item을 heap에 추가
  • heapq.heappop(heap) : heap에서 가장 작은 원소를 pop & 리턴. 비어 있는 경우 IndexError가 호출됨. 
  • heapq.heapify(x) : 리스트 x를 즉각적으로 heap으로 변환함 (in linear time, O(N) )

'알고리즘 코드리뷰 > 파이썬' 카테고리의 다른 글

3. 프로그래머스_다리를지나는트럭  (0) 2022.05.08
1. 백준_기능개발  (0) 2022.05.08