level 1
JKWEBA
楼主
program p21;
var
n,i,j,l,k,m:integer;
a:array[0..300]of longint;
f:array[0..300,0..300]of longint;
function max(x,y:longint):longint;
begin
if x>y then exit(x)
else exit(y);
end;
begin
readln(n);m:=0;
for i:=1 to n do
read(a[i]);
for i:=1 to n do
a[i+n]:=a[i];
fillchar(f,sizeof(f),0);
for i:=n downto 1 do
for j:=i to i+n do begin
for k:=i to j-1 do
m:=max(m,f[i,k]+f[k,j]+a[i]*a[k+1]*a[j-1]);
f[i,j]:=max(m,f[i,j]);end;
m:=0;
for i:= 1 to n do
m:=max(m,f[i,i+n-1]);
writeln(m);
end.
2015年10月19日 01点10分
1
var
n,i,j,l,k,m:integer;
a:array[0..300]of longint;
f:array[0..300,0..300]of longint;
function max(x,y:longint):longint;
begin
if x>y then exit(x)
else exit(y);
end;
begin
readln(n);m:=0;
for i:=1 to n do
read(a[i]);
for i:=1 to n do
a[i+n]:=a[i];
fillchar(f,sizeof(f),0);
for i:=n downto 1 do
for j:=i to i+n do begin
for k:=i to j-1 do
m:=max(m,f[i,k]+f[k,j]+a[i]*a[k+1]*a[j-1]);
f[i,j]:=max(m,f[i,j]);end;
m:=0;
for i:= 1 to n do
m:=max(m,f[i,i+n-1]);
writeln(m);
end.