Cod sursa(job #2390248)

Utilizator temporartemporar temporar Data 27 martie 2019 21:07:16
Problema Problema rucsacului Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.9 kb
Program rucsac;
uses math;
var n,i,j,g,ct,lol:integer;
    fi,fo:text;
    u:boolean;
    m:array[0..2,0..5010] of integer;
    p:array[0..10001] of integer;
    w:array[0..10001] of integer;
begin
   assign(fi,'rucsac.in');
   reset(fi);
   assign(fo,'rucsac.out');
   rewrite(fo);
   read(fi,n);
   readln(fi,g);
   lol := 0;
   for i:=1 to n do begin
                    read(fi,w[i]);
                    read(fi,p[i]);
                    readln(fi);
                    end;
  for j:=0 to g do
               m[lol,j]:=0;
                lol := 1 xor lol;
  for i:=1 to n do begin
                for j:=0 to g do begin
                if w[i]>j then m[lol,j]:=m[1 xor lol,j]
                          else m[lol,j]:=max(m[1 xor lol,j],m[1 xor lol,j-w[i]]+p[i]);

                end;
 lol := 1 xor lol;
 end;
            writeln(fo,m[lol,j]);
 
 close(fi);
 close(fo);
 end.