您的位置:首页 > 其它

(ssl1014)P1049 装箱问题

2017-04-22 11:54 232 查看
2001年分区联赛普级组之四 装箱问题
Time Limit:1000MS  Memory Limit:65536K

Total Submit:398 Accepted:218
Description
  有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30=,每个物品有一个体积(正整数)。 

要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。 

Input

Output

Sample Input

24    一个整数,表示箱子容量
6      一个整数,表示有n个物品
8    接下来n行,分别表示这n 个物品的各自体积
3
12
7
9
7


Sample Output

0  一个整数,表示箱子剩余空间。


Source
elba

var
a,f:array[0..20000]of longint;
v,n,i,j:longint;
function max(a,b:longint):longint;
begin
if a>b then exit(a);
exit(b);
end;
begin
readln(v);
readln(n);
for i:=1 to n do readln(a[i]);
for i:=1 to n do
for j:=v downto a[i] do
f[j]:=max(f[j-a[i]]+a[i],f[j]);
writeln(v-f[v]);//剩余空间
end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: