Cod sursa(job #1874263)

Utilizator wilson182Alexandrina Panfil wilson182 Data 9 februarie 2017 20:41:55
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<bits/stdc++.h>
#define N 5050
using namespace std;
int e[1020], g, dp[N], c[1020], i, w, j;
int main(){
	ifstream fin("energii.in");
	ofstream fout("energii.out");
	fin>>g>>w;
	for(i=1;i<=g;i++) {
		fin>>e[i]>>c[i];
	}
	for(i=0;i<=w;i++) dp[i]=999999;
	for(i=1;i<=g;i++)
		for(j=w; j>=1;j--){
            if (e[i]<j) dp[j]=min(dp[j-e[i]]+c[i], dp[j]);
            else dp[j] = min(dp[j], c[i]);
        }
	if(dp[w]==999999)fout<<-1; else fout<<dp[w];
	return 0;
}