Pagini recente » Cod sursa (job #1657860) | Cod sursa (job #212343) | Cod sursa (job #2156456) | Cod sursa (job #526781) | Cod sursa (job #1226016)
#include <cstdio>
#include <climits>
#include <algorithm>
using namespace std;
#define NMAX 10000001
int energy,cost,i,j,N,M,VMAX,MIN;
int marked[NMAX];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&N,&M);
for (i=1;i<=N;++i)
{
scanf("%d%d",&energy,&cost);
for (j=VMAX;j>=0;--j)
if (marked[j] || !j)
{
if (marked[j+energy]==0) marked[j+energy]=INT_MAX;
marked[j+energy]=min(marked[j+energy],marked[j]+cost);
}
VMAX=VMAX+energy;
}
for (i=M,MIN=INT_MAX;i<=VMAX;++i)
if (marked[i])
MIN=min(MIN,marked[i]);
printf("%d\n",MIN);
return 0;
}