Cod sursa(job #3255530)

Utilizator Shaan_StefanShaan Stefan Shaan_Stefan Data 10 noiembrie 2024 21:48:53
Problema Energii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#include <cstring>

using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
struct generator
{
    int p, c;
}en[1010];
int vp[5010];
int n, powr, mp=10010;
int main()
{
    fin>>n>>powr;
    memset(vp, -1, sizeof(vp));
    for(int i=1; i<=n; i++)
    {
        fin>>en[i].p>>en[i].c;
        vp[en[i].p]=en[i].c;
        mp=min(en[i].p, mp);
    }

    for(int i=2*mp; i<=powr; i++)
    {
        for(int j=1; j<=n; j++)
        {
            if(i-en[j].p>0 && vp[i-en[j].p]!=-1 && (vp[i-en[j].p]+en[j].c<vp[i] || vp[i]==-1))
                vp[i]=vp[i-en[j].p]+en[j].c;
        }
    }
    fout<<vp[powr];
    return 0;
}