Cod sursa(job #670752)
Utilizator | Data | 29 ianuarie 2012 22:52:47 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.35 kb |
#include<stdio.h>
#define max(a,b) ((a)>(b)?(a):(b))
#define dim 10010
int v[dim],n,g;
int main(){
int i,w,p;
freopen("rucsac.in","r",stdin);
freopen("rucsac.out","w",stdout);
scanf("%d %d",&n,&g);
while(n--){
scanf("%d %d",&w,&p);
for(i=g-w;i>=0;i--)
v[i+w]=max(v[i+w],v[i]+p);
}printf("%d\n",v[g]);
}