比赛 |
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.