Pagini recente » Cod sursa (job #311816) | Cod sursa (job #1154898) | Cod sursa (job #2796331) | Cod sursa (job #2840329) | Cod sursa (job #1704906)
#include <iostream>
#include <fstream>
using namespace std;
struct generator
{
int c,e;
};
generator v[20111];
int d[20111],i,n,j,s;
int main()
{
ifstream f("energii.in");
ofstream g("energii.out");
f>>n>>s;
for(i=1; i<=n; ++i)
f>>v[i].e>>v[i].c;
for(i=1; i<=n; ++i)
{
for(j=s; j>=0; --j)
if(d[j]!=0 || j==0)
{
if(j+v[i].e<=s)
{
if(d[j+v[i].e]==0 || d[j+v[i].e]>d[j]+v[i].c)
d[j+v[i].e]=d[j]+v[i].c;
}
else
{
if(d[s]==0 || d[s]>d[j]+v[i].c)
d[s]=d[j]+v[i].c;
}
}
}
if(d[s]!=0)
g<<d[s];
else
g<<-1;
}