인프런 커뮤니티 질문&답변
4-9 4주차 숙제중 농심라면 문제
작성
·
27
0
현재 노션에 있는 코드대로 써 보았습니다
def get_minimum_count_of_overseas_supply(stock, dates, supplies, k):
answer = 0
last_added_date_index = 0
max_heap = []
while stock < k :
#후보군이 되어야하는 것들만 넣는다 => 공장이 멈추기 전까지
while last_added_date_index < len(dates) and dates[last_added_date_index] <= stock:
heapq.heappush(max_heap, supplies[last_added_date_index] * -1)
last_added_date_index += 1
supply = heapq.heappop(max_heap) * -1
stock += supply
answer += 1
return answer하지만 9번 테스트 케이스(마지막 날에 공급받는 경우)에서 정답은 2인데, 현재 풀이 값은 1로 나옵니다.
# 9. 마지막 날에 공급받는 경우
print("정답 = 2 / 현재 풀이 값 =", get_minimum_count_of_overseas_supply(10, [10, 29], [20, 100], 30))노션을 확인해보았지만 코드는 같습니다.
뭔가 놓치신게 있는거 같습니다. 어떻게 수정하면 될까요?
답변 1
0
테스트 케이스가 잘못 작성된거 같습니다.
저는 1이 맞다고 생각합니다.
공급 1회차 수행
가장 큰 공급량 20 선택
→ stock = 10 + 20 = 30
→ count = 1
이제 stock = 30 >= k = 30
→ while 종료




