목록Algorithm/Heap (2)
09009
문제 보기 https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 heap 자료구조를 이용하여 문제를 해결하였다. (최소 힙) 소스 코드 import heapq as hq def solution(k, score): answer = [0] * len(score) heap = [] for i in range(len(score)): hq.heappush(heap, score[i]) if len(heap) > k: hq.heappop(heap) ..
최대 힙 문제 보기 https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제 해결 heap 모듈에 정의된 heappush(heap, value)는 heap에 value를 추가하면서 heap의 성질을 유지시킨다. value만 추가할 경우, heap은 최소 힙의 성질을 갖게 된다. → 가장 작은 value를 가진 것이 heap의 루트 노드가 된다. * heappush(heap, (-value, value)) (-value, va..
