slzxzh 2010-04-20 21:21:00
点我顶贴
收藏
删除
var
max,i,n,j,k:longint;
a:array [1..200] of longint;
f:array [1..200,1..200] of longint;
begin
readln(n);
for i:=1 to n do
read(a[i]);
for i:=n+1 to 2*n do
a[i]:=a[i-n];
for i:=n downto 1 do
for j:=i to i+n-1 do
begin
f[i,j]:=0;
if i<j then
for k:=i to j-1 do
if f[i,k]+f[k+1,j]+a[i]*a[j+1]*a[k+1]>f[i,j] then
f[i,j]:=f[i,k]+f[k+1,j]+a[i]*a[j+1]*a[k+1];
end;
max:=0;
for i:=1 to n do
if f[i,i+n-1]>max then max:=f[i,i+n-1];
write(max);
end.
哪里错了 50分