Cod sursa(job #831184)

Utilizator adrianav500Adriana Voinescu adrianav500 Data 8 decembrie 2012 11:29:20
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<cstdio>
#include<algorithm>
#define maxim 2000000000
using namespace std;
int n,i,j,k,wx,w[10005],e[10005],rezultat,x,y;
int main(){
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d %d",&n,&wx);
for (i=1;i<=10000;i++) e[i]=maxim;
rezultat=maxim;
w[0]=1;
e[0]=0;
for(i=1;i<=n;i++){
scanf("%d %d",&x,&y);
for(j=wx;j>=0;j--)
if(w[j]==1){
w[j+x]=1;
e[j+x]=min(e[j+x],e[j]+y);
if(j+x>=wx) rezultat=min(rezultat,e[j+x]);
}
}
if(rezultat!=maxim) printf("%d\n",rezultat);
else printf("-1\n");
return 0;
}