yindui 2012-06-07 20:17:00
点我顶贴
收藏
删除
自己数据全过,交了全错(--_--)
program rqn98;
var
m,v,k:longint;
v1,w,n1:array[1..2000]of longint;
c:array[0..1,0..500+10]of longint;
procedure readdate;
var
i,j:longint;
begin
read(m,v);
for i:=1 to m do
begin
read(n1[i],v1[i],w[i]);
end;
end;
procedure main;
var
i,j,i1,max:longint;
begin
fillchar(c,sizeof(c),0);
max:=0;
for i:=1 to i do
for i1:=1 to n1[i]do
begin
inc(k);
for j:=1 to v do
begin
c[k mod 2,j]:=c[(k-1)mod 2,j];
if (j-v1[i]>=0)and(w[i]+c[k mod 2,j-v1[i]]>c[k mod 2,j]) then c[k mod 2,j]:=w[i]+c[(k-1)mod 2,j-v1[i]];
if c[k mod 2,j]>max then max:=c[k mod 2,j];
end;
end;
write(max);
end;
begin
readdate;
main;
end.