Pagini recente » Cod sursa (job #995945) | Cod sursa (job #431355) | Cod sursa (job #1118829) | Cod sursa (job #2076437) | Cod sursa (job #669984)
Cod sursa(job #669984)
#include<stdio.h>
#include<string.h>
FILE *fin=fopen("rucsac.in","r");
FILE *fout=fopen("rucsac.out","w");
int i,j,n,w,p,g,v[10010],profit,max;
int main(){
fscanf(fin,"%d %d",&n,&g);
memset(v,-1,sizeof(v));
for(i=1;i<=n;i++){
fscanf(fin,"%d %d",&w,&p);
for(j=g;j>=0;j--){
if(v[j]>=0){
if(j+w<=g){
profit=v[j]+p;
if(profit>v[j+w]){
v[j+w]=profit;
if(profit>max){
max=profit;
}
}
}
}
if(j==0){
if(p>v[w]){
v[w]=p;
if(p>max){
max=p;
}
}
}
}
}
fprintf(fout,"%d",max);
return 0;
}