Cod sursa(job #1985281)

Utilizator stef2003Bud Stefan stef2003 Data 27 mai 2017 13:28:09
Problema Problema rucsacului Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <iostream>
#include <stdio.h>

using namespace std;

int a[10001];
int main() {
  FILE *fin, *fout;
  int n, m, g, p, i, j;
  fin=fopen("rucsac.in","r");
  fout=fopen("rucsac.out","w");
  fscanf(fin, "%d%d",&n,&m);
  for(i=1;i<=n;i++) {
    fscanf(fin, "%d%d",&g,&p);
    for(j=m;j>0;j--)
      if(a[j]!=0 && a[j+g]<a[j]+p)
        a[j+g]=a[j]+p;
    if(a[g]<p)
      a[g]=p;
  }
  p=0;
  for(i=1;i<=m;i++)
    if(a[i]>p)
      p=a[i];
  fprintf(fout, "%d",p);
  fclose( fin );
  fclose( fout );
  return 0;
}