tian 2008-04-02 03:33:00
点我顶贴
收藏
删除
program dddd;
var a,b,c:array[1..1000]of longint;
s:array[0..1000000]of longint;
n,v,i,j,r,we:longint;
begin
fillchar(s,sizeof(s),0);
read(n,v);
for i:= 1to n do
read(a[i],b[i],c[i]);
for i:= 1to n do
begin
if v>=b[i] then
begin
we:=v div b[i];
if we>a[i] then
we:=a[i];
for j:= 1to we do
begin
for r:=v downto 0 do
if r>=b[i] then
begin
if s[r]<s[r-b[i]]+c[i] then
s[r]:=s[r-b[i]]+c[i];
end
else break;
end;
end;
end;
write(s[v]);
end.