Pagini recente » Cod sursa (job #1263318) | Cod sursa (job #941276) | Cod sursa (job #2220593) | Cod sursa (job #1268580) | Cod sursa (job #2951796)
#include <bits/stdc++.h>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int G , w , totalEnergy;
int e[1001] , c[1001];
int dp[5001];
int main()
{
f >> G >> w;
for(int i = 1 ; i <= G ; ++i){
f >> e[i] >> c[i];
totalEnergy += e[i];
}
if(totalEnergy < w){
g << -1;
return 0;
}
for(int i = 1 ; i <= w ; ++i)
dp[i] = 2000000000;
for(int i = 1 ; i <= G ; ++i)
for(int j = w ; j >= 0 ; --j){
int jj = j + e[i];
jj = min(w , jj);
dp[jj] = min(dp[jj] , dp[j] + c[i]);
}
g << dp[w];
return 0;
}