옛날 문제

  • 문제가 바뀐 것 같다. 2026년 4월 13월 기준 이 문제는 존재하지 않는다. 아래는 옛날 버전의 문제 설명이다.

최종

#include <iostream>
#include <vector>
#include <queue>
 
using namespace std;
 
int solution(int stock, vector<int> dates, vector<int> supplies, int k) {
	int impCnt = 0, idx = 0 /* 수입 인덱스 - 다음에 예정된 수입일자를 나타내는 인덱스 */ ;
	priority_queue<int> maxq;
	while (stock < k) /* 지금있는 밀가루로는 버티는게 불가능할 경우 */ {
		for(int i = idx; i < dates.size(); i++) /* 앞으로 예정된 수입을 순회함 */ {
			if(dates[i] <= stock) /* 해당 수입 일자까지 버틸 수 있음 */ {
				maxq.push(supplies[i]);
				idx++;
			} else /* 해당 수입 일자까지 버틸 수 없음 */ {
				break;
			}
		}
		stock += maxq.top();
		maxq.pop();
		impCnt++;
	}
	return impCnt;
}