Cod sursa(job #1028197)

Utilizator laurageorgescuLaura Georgescu laurageorgescu Data 13 noiembrie 2013 19:25:58
Problema Energii Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
#define M 2000000000
using namespace std;
int d[15001];
void init()
{
    for (int i=1;i<150001;++i)
        d[i]=M;
}
int main()
{
    ifstream in("energii.in");
    ofstream out("energii.out");
    int g,w,mn,v,c,i,s=0;
    in>>g>>w;
    for (int i=0;i<g;++i )
        {
        in>>v>>c;
        for (int j=15000-v;j>-1;--j)
            if (d[j+v]>d[j]+c)
                d[j+v]=d[j]+c;
        s+=v;
        }
    mn=M;
    for (i=w;i<=s;++i)
        if (d[i]<mn)
            mn=d[i];
    if (mn==M)
        mn=-1;
    out<<mn<<'\n';
    in.close();
    out.close();
    return 0;
}