Pagini recente » Cod sursa (job #3248660) | Cod sursa (job #1158260) | Cod sursa (job #101466) | Cod sursa (job #1563959) | Cod sursa (job #3255530)
#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;
}