Cod sursa(job #1956889)

Utilizator thinkphpAdrian Statescu thinkphp Data 7 aprilie 2017 09:39:50
Problema Problema rucsacului Scor 65
Compilator c Status done
Runda Arhiva educationala Marime 0.62 kb
#include <stdio.h>
#define FIN "rucsac.in"
#define FOUT "rucsac.out"
#define MAXW 10001
#define MAXC 10001
#define MAXP 10001

int max(int a, int b) {if(a>b) return a; else return b;}

int main() {
  int i, j, n, g;
  int w[MAXW], c[MAXC], Cost[MAXP];

  freopen(FIN, "r", stdin);
  freopen(FOUT, "w", stdout);

  scanf("%d %d", &n, &g);

  for(i = 1; i <= n; i++) {
      scanf("%d", &w[ i ]);
      scanf("%d", &c[ i ]);
  }

  for(i = 0; i <= n; ++i) 

      for(j = g; j >= w[i]; j--) 

          Cost[ j ] = max(Cost[j], Cost[j - w[i]] + c[i]);



  printf("%d", Cost[g]);


 return(0);
}