s:array[-1..50,-1..50,-1..50,-1..50]of integer;
b:array[1..4]of longint;
a:array[1..500]of longint;
function max(x1,x2,x3,x4:integer):integer;
begin
max:=x1;
if (x1>x2)and(x1>x3)and(x1>x4) then max:=x1;
if (x2>x1)and(x2>x3)and(x2>x4) then max:=x2;
if (x3>x1)and(x3>x2)and(x3>x4) then max:=x3;
if (x4>x1)and(x4>x2)and(x4>x3) then max:=x4;
end;
begin
readln(n,m);
for i:=1 to n do read(a[i]);
for i:=1 to m do
begin read(x);inc(b[x]); end;
fillchar(s,sizeof(s),0);
s[0,0,0,0]:=a[1];
for i:=0 to b[1] do
for j:=0 to b[2] do
for k:=0 to b[3] do
for l:=0 to b[4] do
s[i,j,k,l]:=max(s[i-1,j,k,l],s[i,j-1,k,l],s[i,j,k-1,l],s[i,j,k,l-1])+a[1+i*1+j*2+k*3+l*4];
writeln(s[b[1],b[2],b[3],b[4]]);
close(input);
end.
状态: Unaccepted
测评机: Xeost[5]
得分: 80分
提交日期: 2011-10-27 19:48:00
有效耗时: 1563毫秒
测试结果1: 通过本测试点|有效耗时187ms
测试结果2: 通过本测试点|有效耗时188ms
测试结果3: 通过本测试点|有效耗时187ms
测试结果4: 通过本测试点|有效耗时188ms
测试结果5: 通过本测试点|有效耗时187ms
测试结果6: 通过本测试点|有效耗时188ms
测试结果7: 通过本测试点|有效耗时203ms
测试结果8: 测试结果错误.错误结果为:9422
正确结果应为:9424
测试结果9: 通过本测试点|有效耗时235ms
测试结果10: 测试结果错误.错误结果为:9471
正确结果应为:9485