Pagini recente » Cod sursa (job #1892376) | Cod sursa (job #2126871) | Cod sursa (job #3202206) | Cod sursa (job #3179440) | Cod sursa (job #1792493)
#include<cstdio>
using namespace std;
int i, n, pmax, mx, a[1005], x, y, j;
int main(){
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d", &n, &pmax);
mx=0;
for (i=1;i<=n;i++) {
scanf("%d%d", &x, &y); ///x=energia y=costul
for (j=mx;j>=0;j--) if (j+x<=pmax)
if ((a[j]>0)&&(a[j+x]>a[j]+y)) {
a[j+x]=a[y]+j;
if (mx<j+x) mx=j+x;
}
if ((a[x]==0)||(a[x]>y)) a[x]=y;
}
if (a[pmax]!=0) printf("%d", a[pmax]); else printf("-1\n");
return 0;
}