Pagini recente » Cod sursa (job #490488) | Istoria paginii runda/simulare_oni_liceu/clasament | Cod sursa (job #1348874) | Cod sursa (job #1387084) | Cod sursa (job #1847748)
#include <iostream>
#define in "energii.in"
#define out "energii.out"
using namespace std;
int main() {
freopen(in, "r", stdin);
freopen(out, "w", stdout);
int G,W;
cin>>G>>W;
int eg[G+1], cg[G+1], ta[G+1][W+1];
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;
}