Pagini recente » Borderou de evaluare (job #156938) | Profil indianu | Cod sursa (job #1246903) | Borderou de evaluare (job #1569146) | Cod sursa (job #334322)
Cod sursa(job #334322)
#include <stdio.h>
#define N 1024
#define P 6000
#define inf 1000000000
struct generator
{
int a,b;
};
generator v[N];
int g,w,cost[P];
void read()
{
scanf("%d%d",&g,&w);
int i;
for (i=1; i<=g; i++)
scanf("%d%d",&v[i].a,&v[i].b);
}
void solve()
{
int i,j,t;
for (i=1; i<=w; i++)
cost[i]=inf;
for (i=1; i<=g; i++)
{
for (j=w-1; j>=0; j--)
{
t=j+v[i].a;
if (t>w)
t=w;
if (cost[j]+v[i].b<cost[t])
cost[t]=cost[j]+v[i].b;
}
}
if (cost[w]!=inf)
printf("%d\n",cost[w]);
else
printf("-1\n");
}
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
read();
solve();
return 0;
}