Pagini recente » Cod sursa (job #2329716) | Cod sursa (job #1751111) | Cod sursa (job #1628923) | Cod sursa (job #2338794) | Cod sursa (job #1105710)
var n,i , j, Max: integer;
a: array[0..10000, 0..5000] of longint;
c, g: array[1..10000] of integer;
function Maxim(a, b: integer): integer;
begin
if a>b then maxim:=a
else maxim:=b;
end;
begin
assign(input,'ruc.in');
reset(input);
assign(output,'ruc.out');
rewrite(output);
readln(n, max);
for i:=1 to n do readln(g[i], c[i]);
for i:=0 to max do a[0, i]:=0;
for i:=0 to n do a[i, 0]:=0;
for i:=1 to n do
for j:=1 to max do
if g[i]>j then a[i, j]:=a[i-1, j]
else
a[i, j]:=Maxim(a[i-1, j], a[i-1, j-g[i]]+c[i]);
writeln(a[n, max]);
close(input);
close(output);
end.