Pagini recente » Istoria paginii runda/lee-pregatire/clasament | Cod sursa (job #793953) | Istoria paginii runda/oniwtf | Istoria paginii utilizator/miihairadu | Cod sursa (job #492608)
Cod sursa(job #492608)
#include<stdio.h>
#include<limits.h>
int g1,w,i,j,m,n,a[5002];
int main(){
FILE * f=fopen("energii.in","r");
FILE * g=fopen("energii.out","w");
fscanf (f,"%d %d",&g1,&w);
a[0]=0;
for (i=1;i<=w;i++)
a[i]=INT_MAX;
for (i=1;i<=g1;i++){
fscanf(f,"%d %d",&m,&n);
for (j=w;j>=0;j--)
if (a[j]!=INT_MAX)
if (a[j]+n<a[j+m]&&j+m<=w)
a[j+m]=a[j]+n;
else
if (a[j]+n<a[w]&&j+m>w)
a[w]=a[j]+n;
}
if (a[w]!=INT_MAX)
fprintf(g,"%d",a[w]);
else
fprintf(g,"%d",-1);
return 0;
}