Pagini recente » Cod sursa (job #2750545) | Cod sursa (job #2045065) | Cod sursa (job #2314754) | Cod sursa (job #2058342) | Cod sursa (job #1143570)
#include <fstream>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
const int NMAX= 5000;
int v[NMAX+1], G, N, c,k;
int main()
{
in >> N >> G;
v[0]= 0;
for( int j= 1; j<=G; j++ ) {
v[j]= -1;
}
for( int i= 1; i<=N; i++ ) {
in >> c >> k;
for( int j= G; j>=0; j-- ) {
if( v[j] != -1 ) {
if( j+c <= G ) {
if( v[ j+c ] == -1 || v[ j+c ] > k+v[j] ) {
v[ j+c ]= k+v[j];
}
}
else if( v[G] > k+v[j] || v[G] == -1 ) {
v[G]= k+v[j];
}
}
}
}
out << v[G];
return 0;
}