Pagini recente » Cod sursa (job #684441) | Cod sursa (job #2540731) | Cod sursa (job #2523166) | Cod sursa (job #258021) | Cod sursa (job #1710350)
#include <stdio.h>
#include <string.h>
#include <iostream>
#define DIM 1005
#define INF 10000000
using namespace std;
int g,w,eg[DIM],cg[DIM],dp[5005];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&g,&w);
for(int i=1;i<=g;i++)
scanf("%d%d",&eg[i],&cg[i]);
memset(dp,INF,sizeof(dp));
for(int i=1;i<=g;i++) {
for(int j=w;j>eg[i];j--)
if(dp[j-eg[i]]+cg[i]<dp[j])
dp[j]=dp[j-eg[i]]+cg[i];
for(int j=eg[i];j>=1;j--)
if(cg[i]<dp[j])
dp[j]=cg[i];
}
if(dp[w]==INF)
printf("-1");
else
printf("%d",dp[w]);
return 0;
}