讨论 / 强人看看
liulei626 2008-11-10 19:51:00
点我顶贴 收藏 删除
program AC;

var

a:array[0..21,0..35000] of longint;

b:array[1..21] of longint;

i,j,k,m,n:integer;

begin

readln(n,m);

for i:=1 to m do

read(b[i]);

for i:=0 to 30 do

for j:=0 to 35000 do

a[i,j]:=0;

for i:=1 to m do

for j:=1 to n do

begin

if j<b[i] then a[i,j]:=a[i-1,j] else

if a[i-1,j]>(a[i-1,j-b[i]]+b[i]) then

a[i,j]:=a[i-1,j]

else a[i,j]:=a[i-1,j-b[i]]+b[i];

end;

writeln(a[m,n]);

end.

最后三个输出0

查看更多回复
提交回复