Pagini recente » Cod sursa (job #640758) | Cod sursa (job #2808173) | Cod sursa (job #1678881) | Borderou de evaluare (job #1717712) | Cod sursa (job #810492)
Cod sursa(job #810492)
#include<cstdio>
#include<algorithm>
#define oo (1<<31)-1
using namespace std;
int sol[5005],n,E,e,c,i,j;
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&n,&E);
for(i=1;i<=E;i++) sol[i]=oo;
for(i=1;i<=n;i++)
{
scanf("%d%d",&e,&c);
for(j=E+e-1;j>=e+1;j--)
{
if(sol[j-e]!=oo)
{
if(j>E) sol[E]=min(sol[E],sol[j-e]+c);
else sol[j]=min(sol[j],sol[j-e]+c);
}
}
sol[e]=min(sol[e],c);
}
if(sol[E]!=oo) printf("%d\n",sol[E]);
else printf("-1\n");
return 0;
}