Pagini recente » Cod sursa (job #1590700) | Cod sursa (job #2084348) | Cod sursa (job #3198660) | Cod sursa (job #119970) | Cod sursa (job #743371)
Cod sursa(job #743371)
Program paranteza_optima_matrici;
const inf=1000000000;
var fi,fo : text;
bst:array[0..500,0..500] of longint;
d : array[0..500] of longint;
i,j,n,k,w : longint;
Function min(a,b:longint):longint;
begin
if a<b then min:=a
else min:=b;
end;
begin
assign(fi,'podm.in'); reset(fi); readln(fi,n);
assign(fo,'podm.out'); rewrite(fo);
for i:=0 to n do read(fi,d[i]);
for i:=1 to n-1 do bst[i,i+1]:=d[i-1]*d[i]*d[i+1];
for i:=2 to n-1 do
for j:=1 to n-i do begin
w:=i+j;
bst[j,w]:=inf;
for k:=j to w-1 do bst[j,w]:=min(bst[j,w],bst[j,k]+bst[k+1,w]+d[j-1]*d[k]*d[i]);
end;
write(fo,bst[1,n]);
close(fi); close(fo);
end.