heapq Python에서는 힙(heap) 기능을 위해 heapq 라이브러리를 제공한다. heapq는 다익스트라 최단 경로 알고리즘 등 다양한 알고리즘에서 우선순위 큐 기능을 구현하고자 할 때 사용한다. heapq 외에도 PriorityQueue 라이브러리를 사용할 수 있지만, 코딩 테스트 환경에서는 보통 heapq가 더 빠르게 동작하므로 heapq를 이용하도록 하자. Python의 힙(heap)은 최소 힙(min heap)으로 구성되어 있으므로 단순히 원소를 힙에 전부 넣었다가 빼는 것만으로도 시간 복잡도 O(NlogN)에 오름차순 정렬이 완료된다. 보통 최소 힙 자료구조의 최상단 원소는 항상 '가장 작은' 원소이기 때문이다.힙에 원소를 삽입할 때는 heapq.heappush() 메소드를 이용하고, 힙..