https://www.acmicpc.net/problem/23757
파이썬의 우선순위 큐인 heapq 사용하면 쉽게 풀 수 있다.
import heapq
n,m = map(int, input().split())
giftcnt = list(map(int ,input().split()))
wantcnt = list(map(int ,input().split()))
heap = []
for i in giftcnt : heap.append(i*(-1))
heapq.heapify(heap)
ans = 1
for i in wantcnt :
minus_k= heapq.heappop(heap)
k = (-1)*minus_k
if i > k :
print(0)
exit()
else :
k = k-i
heapq.heappush(heap,(-1)*k)
print(1)
'알고리즘 문제풀이' 카테고리의 다른 글
창영이의 일기장[백준 2954] (1) | 2024.09.18 |
---|---|
Piggy Back [10652 백준] (0) | 2024.09.18 |
강의실[백준 1374] (1) | 2024.09.11 |
Heat Wave[백준 5996] (0) | 2024.09.11 |
Road to Savings[백준 27617] (0) | 2024.09.10 |