比赛 NOIP2008集训模拟4 评测结果 AAAWAAWAAA
题目名称 灵魂分流药剂 最终得分 80
用户昵称 maxiem 运行时间 0.000 s
代码语言 Pascal 内存使用 0.00 MiB
提交时间 2008-11-13 10:52:33
显示代码纯文本
program soultap;
var
  v,w,no,p,i,j,k,l,n,m,a,b:integer;
  box:array [1..10] of record
    u:boolean;
    t:array [1..100] of record
      v,w,p:integer
    end;
    sum:integer;
  end;
  f:array [1..100,1..100] of longint;
begin
  fillchar (box,sizeof(box),0);
  assign (input,'soultap.in');
  reset (input);
  readln (n,m,a,b);
  for i:=1 to n do begin
    readln (v,w,no,p);
    inc(box[no].sum);
    box[no].t[box[no].sum].v:=v;
    box[no].t[box[no].sum].w:=w;
    box[no].t[box[no].sum].p:=p;
  end;
  close (input);
  assign (output,'soultap.out');
  rewrite (output);
  for i:=1 to m do
    for j:=a downto 0 do
      for k:=b downto 0 do
        for l:=1 to box[i].sum do begin
          if (j-box[i].t[l].w>0) and (k-box[i].t[l].v>0) then
            if f[j,k]<f[j-box[i].t[l].w,k-box[i].t[l].v]+box[i].t[l].p then
               f[j,k]:=f[j-box[i].t[l].w,k-box[i].t[l].v]+box[i].t[l].p;
        end;
  writeln (f[a,b]);
  close (output);
end.