Pagini recente » Cod sursa (job #879809) | Cod sursa (job #2073719) | Cod sursa (job #1040254) | Cod sursa (job #2516520) | Cod sursa (job #895741)
Cod sursa(job #895741)
#include<stdio.h>
using namespace std;
int v[15003];
int main()
{
int n,g,x,y,j,min,i;
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&n,&g);
for(i=1;i<=n;i++)
{
scanf("%d%d",&x,&y);
for(j=g+x;j>x;j--)
{
if(v[j-x]!=0)
{
if(v[j-x]+y<v[j])
v[j]=v[j-x]+y;
else
if(v[j]==0)
v[j]=v[j-x]+y;
}
}
if(v[x]==0)
v[x]=y;
else
if(y<v[x])
v[x]=y;
}
min=100000001;
int pp=0;
for(i=g;i<=15001;i++)
if(v[i]<min&&v[i]!=0)
{
min=v[i];
pp=1;
}
if(pp)
printf("%d",min);
else
printf("-1");
/*for(i=g;i<=g;i++)
printf("%d ",v[i]);
*/
return 0;
}