문제출처: https://www.acmicpc.net/problem/15903
1. 문제 접근 방식
힙에 삽입하고 m번 동안 heappop 2회 한 후에 둘을 더한 값을 heappush 2회 해준다.
2. 내가 푼 코드
import sys
import heapq
n, m = map(int,sys.stdin.readline().split())
heap = []
arr = list(map(int,sys.stdin.readline().split()))
for i in arr:
heapq.heappush(heap, i)
for i in range(m):
a = heapq.heappop(heap)
b = heapq.heappop(heap)
heapq.heappush(heap,a+b)
heapq.heappush(heap,a+b)
print(sum(heap))
3. 결과 및 느낀점
힙 라이브러리 진짜 편리하다...
'[Boj문제풀이]' 카테고리의 다른 글
[Boj/백준] 19598 Python (0) | 2021.09.15 |
---|---|
[Boj/백준] 19638 Python (0) | 2021.09.14 |
[Boj/백준] 1927 11279 11286 Python (0) | 2021.09.13 |
[Boj/백준] 5464 Python (0) | 2021.09.11 |
[Boj/백준] 18115 Python (0) | 2021.09.10 |