讨论 / 这个完全背包????
侯霜 2009-03-12 04:19:00
点我顶贴 收藏 删除
这个完全背包不知为什么要赋初值为-maxlongint呀?????????

var

M,N,i,j:integer;

W,Q:array[1..5000]of integer;

f:array[0..10000]of longint;

function max(x,y:longint):longint;

begin

if x>y then exit(x)

else exit(y);

end;

begin

readln(N,M);

for i:=1 to N do

readln(W[i],Q[i]);

filldword(f,sizeof(f)div 4,-maxint);

f[0]:=0;

for i:=1 to N do

for j:=0 to M-W[i] do

f[j+W[i]]:=max(f[j+W[i]],f[j]+Q[i]);

write(f[M]);

end.

查看更多回复
提交回复