Cod sursa(job #1089828)

Utilizator mariusadamMarius Adam mariusadam Data 21 ianuarie 2014 23:00:43
Problema Problema rucsacului Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.78 kb
program rucsac_infoarena;
type ob=record
 g,p:longint;
end;
var cs:array[0..1,0..10001] of longint;
    Bufin,Bufout : Array[1..65000] of byte;
    v:array[1..5000] of ob;
    n,j,i,t,gmax:longint;
    f,g:text;
    s:Qword;
begin
 assign(f,'rucsac.in'); reset(f);
 assign(g,'rucsac.out'); rewrite(g);
 SetTextBuf(f,Bufin);
 SetTextBuf(g,Bufout);
 readln(f,n,gmax);
 for i:=1 to n do
  begin
   readln(f,v[i].g,v[i].p);
  // s:=s+v[i].g;
  end;
 {if gmax>s then
  gmax:=s+1;}
 t:=0;
 for i:=1 to n do
  begin
   for j:=1 to gmax do
    begin
      cs[1-t,j]:=cs[t,j];
     if (j>=v[i].g) then
      if (cs[1-t,j]<cs[t,j-v[i].g]+v[i].p) then
       cs[1-t,j]:=cs[t,j-v[i].g]+v[i].p
    end;
   t:=1-t;
  end;
 writeln(g,cs[t,gmax]);
 close(f);
 close(g);
end.