比赛 叫图论的DP题 评测结果 AAAAA
题目名称 装箱问题 最终得分 100
用户昵称 Hyoi_iostream 运行时间 0.006 s
代码语言 Pascal 内存使用 0.24 MiB
提交时间 2017-08-29 20:30:03
显示代码纯文本
program p1133;
var  maxv,n,i,j:longint;
     v:array[0..30] of longint;
     f:array[0..20000] of longint;
function max(x,y:longint):longint;
  begin
        if x>y then max:=x else max:=y;
  end;
begin
  assign(input,'npack.in');
  assign(output,'npack.out');
  reset(input);
  rewrite(output);
  readln(maxv);
  readln(n);
  for i:=1 to n do 
  readln(v[i]);
    fillchar(f,sizeof(f),0);
     for i:=1 to n do
     for j:=maxv downto v[i] do
       if f[j-v[i]]+v[i]<=maxv then f[j]:=max(f[j-v[i]]+v[i],f[j]);
     writeln(maxv-f[maxv]);
   close(input);
   close(output);
end.