Cod sursa(job #871138)

Utilizator simplicityFlorescu Emanuel Robert simplicity Data 4 februarie 2013 15:18:13
Problema Energii Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<fstream>
using namespace std;
ifstream fin ("energii.in");
ofstream fout("energii.out");
#define nmax 1005
int g,w,eg[nmax],cg[nmax],t[2][10000005],i,s,r,j;
int main()
{   r=10000006;
    fin>>g>>w;
    for(i=1;i<=g;i++)
        fin>>eg[i]>>cg[i];
    for(i=1;i<=g;i++)
        s+=eg[i];
    if(s<w)
        fout<<-1;
    else if(s>=w)
    {
    i=1;
     t[i%2][eg[1]]=cg[1];
    for(i=2;i<=g;i++)
    {
        for(j=1;j<=i;j++)
        t[j%2][eg[j-1]+eg[j]]=t[(j-1)%2][eg[j-1]]+cg[j];
    }
    for(i=w;i<=10000005;i++)
        if(t[g%2][i]<r && t[g%2][i]!=0)
            r=t[g%2][i];
    fout<<r;
    }
return 0;
}