Cod sursa(job #1172428)

Utilizator Mihai_ChihaiMihai Chihai Mihai_Chihai Data 17 aprilie 2014 15:13:50
Problema Parantezare optima de matrici Scor 80
Compilator fpc Status done
Runda Arhiva educationala Marime 0.58 kb
program p1;
 var n,i,j,k:longint;
     d:array[0..510] of longint;
     a:array[1..510,1..510] of int64;
 begin
  assign(input,'podm.in');
  reset(input);
  assign(output,'podm.out');
  rewrite(output);
  readln(n);
    for i:=0 to n do read(d[i]);
  for i:=1 to n-1 do
     a[i,i+1]:=d[i-1]*d[i]*d[i+1];

  for j:=2 to n-1 do
   for i:=1 to n-j do
   begin
    a[i,i+j]:=1 shl 27;
    for k:=i to i+j-1 do
      if a[i,i+j]>a[i,k]+a[k+1,i+j]+d[i-1]*d[k]*d[i+j]
       then a[i,i+j]:=a[i,k]+a[k+1,i+j]+d[i-1]*d[k]*d[i+j];
   end;
   write(a[1,n]);
   close(output);
  end.