Pagini recente » Cod sursa (job #1887335) | Cod sursa (job #1966351) | Cod sursa (job #2718257) | Cod sursa (job #1488793) | Cod sursa (job #2390248)
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.