讨论 / 动归不对吗?才50分!
qdzcslj 2011-07-14 06:34:00
点我顶贴 收藏 删除
type node=record

v:integer;

w:1..5;

end;

var a:array[1..30000] of node;

b:array[0..25,0..10000] of longint;

m,n,i,j:integer;

x1,x2:longint;

begin

readln(n,m);

for i:=1 to m do

readln(a[i].v,a[i].w);

for i:=1 to m do begin

for j:=1 to a[i].v-1 do

b[i,j]:=b[i-1,j];

for j:=a[i].v to n do begin

x1:=b[i-1,j-a[i].v];

x2:=b[i-1,j];

if x1+a[i].v*a[i].w>x2 then

b[i,j]:=x1+a[i].v*a[i].w

else

b[i,j]:=x2;

end;

end;

writeln(b[m,n]);

end.

#1 sunrise@2008-07-08 19:03:00
回复 删除
注意物品编号

不要改动输入时的主件编号

否则附件编号指向错误

#2 cotton@2011-07-14 06:34:00
回复 删除
回复 沙发sunrise 的帖子

谢谢 我发现我的程序也有这个问题

查看更多回复
提交回复