Cod sursa(job #1141273)

Utilizator felixiPuscasu Felix felixi Data 12 martie 2014 19:15:04
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>

using namespace std;

ifstream in("energii.in");
ofstream out("energii.out");

const int GMAX= 10011001;

int d[GMAX+2], G,W;

int main()
{
    int R= (1<<30), p ,c;
    d[0]= 1;
    in >> G >> W;
    for( int i=1; i<=G; i++ ) {
        in >> p >> c;
        for( int j=GMAX-c; j>=0; j-- ) {
            if( d[j] != 0 ) {
                d[ j+c ]= max( d[ j+c ] , d[j] + p );
            }
        }
    }
    for( int i=GMAX; i>=W; --i ) {
        if( d[i] != 0 ) {
            R= min( R , d[i] );
        }
    }
    out << R << '\n';
    return 0;
}