Cod sursa(job #2935942)

Utilizator davidenko22Stancu David-Andrei davidenko22 Data 7 noiembrie 2022 18:34:36
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;

ifstream fin("energii.in");
ofstream fout("energii.out");

const int N = 1e3, G = 1e4, inf = 1e9;

struct generator{
	int energy, cost;
}v[N + 1];

int dp[G + 1];

int main(){

	int n, g, ans;
	fin >> n >> g;
	for ( int i = 1; i <= n; i++ )
    fin >> v[i].energy >> v[i].cost;
	for ( int j = 1; j <= G; j++ )
		dp[j] = inf;
	for ( int i = 1; i <= n; i++ )
		for ( int j = G; j >= v[i].energy; j-- )
			dp[j] = min(dp[j], dp[j - v[i].energy] + v[i].cost);
	ans = inf;
	for ( int i = g; i <= G; i++ )
		ans = min(ans, dp[i]);
	if(ans == inf)
		fout << -1;
	else
		fout << ans;
	return 0;
}