Pagini recente » Cod sursa (job #2032166) | Cod sursa (job #2720294) | Cod sursa (job #2303733) | Cod sursa (job #2718254) | Cod sursa (job #2390216)
Program rucsac;
uses math;
var fi, fo:text;
i,j,w,p,n,g,max1,maxim: integer;
dp:array[1..10005] of integer;
begin
assign(fi,'rucsac.in');
reset(fi);
assign(fo,'rucsac.out');
rewrite(fo);
read(fi,n);
readln(fi,g);
for j:=1 to n do begin
read(fi,w);
read(fi,p);
readln(fi);
for i:=g downto 1 do begin
if (i-w>0) and ( dp[i-w] <>0)
then dp[i]:= max(dp[i], dp[i-w] + p);
if i=w
then dp[i]:= max(dp[i],p);
end;
end;
maxim:=0;
for i:=1 to g do begin
if (dp[i]> maxim) then maxim:=dp[i];
end;
writeln(fo,maxim);
close(fi);
close(fo);
end.