Cod sursa(job #2955020)

Utilizator apocal1ps13Stefan Oprea Antoniu apocal1ps13 Data 15 decembrie 2022 22:27:52
Problema Energii Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include<iostream>
#include<fstream>
#define INF 0x3F3F3F3F
std::ifstream in("energii.in");
std::ofstream out("energii.out");
using namespace std;
int dp[5001];
int e[1001], c[1001];
int n, w;
int main() {
	in >> n >> w;
	for (int j = 0; j <= 5000; j++) dp[j] = INF;

	for (int i = 1; i <= n; i++) in >> e[i] >> c[i], dp[e[i]] = c[i];

	for (int i = 1; i <= n; i++)
		for (int j = w; j >= 0; j--)
			dp[j] = min(dp[j], dp[min(j + e[i], w)] + c[i]);

	if (dp[w] == INF) dp[w] = -1;
	out << dp[w];
	return 0;
}