Mai intai trebuie sa te autentifici.
Cod sursa(job #589852)
Utilizator | Data | 14 mai 2011 09:47:16 | |
---|---|---|---|
Problema | Energii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include<stdio.h>
int g,w,x[1001][2],y[5001],min=100000;
bool z[5001];
int main() {
int i,j;
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&g,&w);
z[0]=true;
for(i=1;i<=g;++i)
{
scanf("%d%d",&x[i][0],&x[i][1]);
for(j=5000-x[i][0];j>=0;--j)
{
if(z[j])
{
z[j+x[i][0]]=true;
y[j+x[i][0]]=y[j]+x[i][1];
}
}
}
for(i=w;i<=5000;++i) {
if(z[i] && y[i]<=min)
min=y[i];
}
printf("%d",min);
return 0;
}