Cod sursa(job #2397364)
Utilizator | Data | 4 aprilie 2019 12:35:51 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <stdio.h>
int d[10005],maxx;
int main(){
FILE* si=fopen("rucsac.in","r");
FILE* so=fopen("rucsac.out","w");
int n,g,i,j,w,p;
fscanf(si,"%d%d",&n,&g);
for(i=0;i<n;i++){
fscanf(si,"%d%d",&w,&p);
for(j=g-w;j>=0;j--){
if(d[j]+p>d[j+w]){
d[j+w]=p+d[j];
if(d[j+w]>maxx) maxx=d[j+w];
}
}
}
fprintf(so,"%d",maxx);
fclose(si);
fclose(so);
return 0;
}