Pagini recente » Cod sursa (job #2899685) | Cod sursa (job #391947) | Cod sursa (job #2851140) | Cod sursa (job #94826) | Cod sursa (job #1096010)
program p1;
var A:array[0..5000,0..5000] of longint;
w,p:array[0..5000] of integer;
f,g:text;
n,i,g1,j:longint;
function max(o1,o2:longint):longint;
begin
if o1>o2 then max:=o1
ELSE max:=o2;
end;
begin
assign(f,'rucsac.in');reset(F);
assign(g,'rucsac.out');rewrite(G);
readln(f,n,g1);
for i:=1 to n do readln(f,w[i],p[i]);
for i:=1 to n do
for j:=0 to g1 do
begin
a[i,j]:=a[i-1,j];
if w[i]<=j then a[i,j]:=max(a[i,j],a[i-1,j-w[i]]+p[i]);
end;
writeln(g,a[n,g1]);
close(F);
close(G);
end.