Pagini recente » Cod sursa (job #3206888) | Cod sursa (job #2701687) | Cod sursa (job #2195497) | Cod sursa (job #46276) | Cod sursa (job #1847750)
#include <iostream>
#define in "energii.in"
#define out "energii.out"
using namespace std;
int eg[1001], cg[1001], ta[1001][5001];
int main() {
freopen(in, "r", stdin);
freopen(out, "w", stdout);
int G,W;
cin>>G>>W;
for (int i=1; i<= G; i++) {
cin>>eg[i]>>cg[i];
}
for (int i=0; i<=G; i++) {
for (int j=0; j<= W; j++) {
ta[i][j] = 10005;
}
}
for (int i=1; i<=G; i++) {
for (int j=1; j<=W; j++) {
if (j > eg[i]) {
ta[i][j] = min(ta[i-1][j], cg[i] + ta[i-1][j-eg[i]]);
} else {
ta[i][j] = min(ta[i-1][j], cg[i]);
}
}
}
if (ta[G][W] == 10005){
cout<<-1;
} else {
cout<<ta[G][W];
}
return 0;
}