Pagini recente » Cod sursa (job #1422092) | Cod sursa (job #2029854) | Cod sursa (job #1459328) | Cod sursa (job #2784176) | Cod sursa (job #2049090)
#include <cstdio>
#include <algorithm>
#define MAXN 5001
#define MAXC 10005
#define IMP 2000000000
#define MAXENG 10001
using namespace std;
FILE *fin=fopen("energii.in","r"),*fout=fopen("energii.out","w");
int e[MAXN],c[MAXN],d[MAXC];
int main(){
int n,et,s=0;
fscanf(fin,"%d%d",&n,&et);
for(int i=1;i<=n;i++){
fscanf(fin,"%d%d",&e[i],&c[i]);
s+=e[i];
}
if(s<et){
fprintf(fout,"-1");
return 0;
}
for(int i=1;i<=MAXENG;i++) d[i]=IMP;
for(int i=1;i<=et;i++){
for(int j=et;j>=e[i];j--)
{
d[j]=min(d[j-e[i]]+c[i],d[j]);
}
for(int t=e[i];t>=1;t--)
{
d[t]=min(d[t],c[i]);
}
}
fprintf(fout,"%d",d[et]);
return 0;
}