23 lines
405 B
ObjectPascal

program party;
var
v,w,s,f:array[0..6001]of longint;
i,j,k,n,m:longint;
function max(a,b:longint):longint;
begin
if a>b then exit(a)
else exit(b);
end;
begin
readln(n,m);
for i:=1 to n do
readln(v[i],w[i],s[i]);
for i:=1 to n do
for k:=1 to s[i] do
for j:=m downto v[i] do
begin
f[j]:=max(f[j],f[j-v[i]]+w[i]);
end;
writeln(f[m]);
readln;
end.