题目地址:http://codevs.cn/problem/1014/
分析:
动态规划
代码:
var f:array[0..30,0..20000] of longint;
w:array[1..30] of longint;
i,j,n,v:longint;
begin
readln(v);
readln(n);
for i:=1 to n do
readln(w[i]);
for i:=1 to n do
for j:=1 to v do
begin
f[i,j]:=f[i-1,j];
if (j>=w[i]) and (f[i,j]<f[i-1,j-w[i]]+w[i]) then
f[i,j]:=f[i-1,j-w[i]]+w[i];
end;
write(v-f[n,v]);
end.