Pagini recente » Cod sursa (job #2469159) | Cod sursa (job #282749) | Cod sursa (job #2551443) | Cod sursa (job #3139917) | Cod sursa (job #1722080)
#include <cstdio>
#include <algorithm>
#include <iostream>
#define INF 1000000000
using namespace std;
int d[10001];
int main()
{
FILE *fin=fopen ("energii.in","r");
FILE *fout=fopen ("energii.out","w");
int n,k,s=0,x,y,j,sol=INF;
fscanf (fin, "%d%d", &n, &k);
for (int i=1;i<=10000;i++)
d[i]=INF;
for (int i=1;i<=n;i++){
fscanf (fin,"%d%d",&x,&y);
s=min(s+x,10000);
for (j=s;j>=x;j--){
d[j]=min(d[j],d[j-x]+y);
if (j>=k)
sol=min(sol,d[j]);
}
}
if (sol==INF)
fprintf (fout,"-1");
else fprintf (fout,"%d",sol);
return 0;
}