Pagini recente » Cod sursa (job #958821) | Cod sursa (job #2291480) | Cod sursa (job #2359359) | Cod sursa (job #3262291) | Cod sursa (job #743370)
Cod sursa(job #743370)
Program Prod_p1;
const infinit=1000000000001;
var fi,fo:text;
i,n,j,w,k : integer;
d:array[0..507] of qword;
c:array[0..502,0..502] of qword;
bufi,bufa:array[0..1 shl 20] of char;
Function min(a,b:qword):qword;
begin
if a<b then min:=a
else min:=b;
end;
begin
assign(input,'podm.in'); reset(input);
assign(output,'podm.out'); rewrite(output);
settextbuf(input,bufi); settextbuf(output,bufa);
readln(n);
for i:=0 to n do read(d[i]);
for i:=1 to n-1 do c[i,i+1]:=d[i-1]*d[i]*d[i+1];
for w:=2 to n-1 do
for i:=1 to n-w do begin
j:=i+w;
c[i,j]:=infinit;
for k:=i to j-1 do c[i,j]:=min(c[i,j],c[i,k]+c[k+1,j]+d[i-1]*d[k]*d[j]);
end;
write(c[1,n]);
end.