Cod sursa(job #3310261)

Utilizator mihai.25Calin Mihai mihai.25 Data 12 septembrie 2025 14:27:20
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <fstream>

#include <vector>

using namespace std;

ifstream fin ("energii.in");

ofstream fout ("energii.out");

int main () {

	int n, g;

	fin >> n >> g;

	vector<int> dp (g + 1, 1e9);

	dp[0] = 0;

	for (int i = 1; i <= n; ++i) {

		int valoare, cost;

		fin >> valoare >> cost;

		for (int j = g - 1; j >= 0; --j) {

			if (dp[j] != 1e9) {
				
				int k = j + valoare;

				if (k > g)
					k = g;
				
				dp[k] = min (dp[k], dp[j] + cost);
			}
		}
	}

	if (dp[g] == 1e9)
		fout << -1;
	else
		fout << dp[g];
	
	return 0;
}