1 条题解
-
0
Pascal :
var n,m,i,k,i1,i2,i3,i4:longint; a,s:array[0..355] of longint; f:array[-1..41,-1..41,-1..41,-1..41] of longint; function max(a,b,c,d,e:longint):longint; begin max:=a; if b>max then max:=b; if c>max then max:=c; if d>max then max:=d; if e>max then max:=e; end; begin readln(n,m); for i:=1 to n do read(a[i]); for i:=1 to m do begin read(k); inc(s[k]); end; for i1:=0 to s[1] do for i2:=0 to s[2] do for i3:=0 to s[3] do for i4:=0 to s[4] do f[i1,i2,i3,i4]:=max(f[i1,i2,i3,i4], f[i1-1,i2,i3,i4], f[i1,i2-1,i3,i4], f[i1,i2,i3-1,i4], f[i1,i2,i3,i4-1])+a[i1+2*i2+3*i3+4*i4+1]; writeln(f[s[1],s[2],s[3],s[4]]); end.
- 1
信息
- ID
- 4467
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者