Cod sursa(job #801197)

Utilizator raulstoinStoin Raul raulstoin Data 23 octombrie 2012 18:33:22
Problema Energii Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>
#include<algorithm>
using namespace std;
ifstream f("energii.in");
ofstream fout("energii.out");
int n,g,e[1005],c[1005],v[10005];
int main()
{
    f>>n>>g;
    int i,j;
    for(i=1;i<=n;i++)
        f>>e[i]>>c[i];
    for(i=1;i<10005;i++)
        v[i]=999999999;
    for(i=1;i<=n;i++)
    {
        for(j=g;j>=0;j--)
        {
            if(v[j]!=999999999)
            {
                if(j+e[i]<=g)
                    v[j+e[i]]=min(v[j+e[i]],v[j]+c[i]);
                else
                    v[g]=min(v[g],v[j]+c[i]);
            }
        }
    }
    if(v[g])
        fout<<v[g]<<'\n';
    else
        fout<<-1<<'\n';
    f.close();
    fout.close();
    return 0;
}