Cod sursa(job #761750)

Utilizator ctlin04UAIC.VlasCatalin ctlin04 Data 27 iunie 2012 12:15:45
Problema Parantezare optima de matrici Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
#define inf 1000000000000
#define Min(a, b) ((a) < (b) ? (a) : (b))
long long a[505][505], d[505];

int main(void){
    int i,j,n,k,w;
    ifstream fin("podm.in");
    ofstream fout("podm.out");
     fin>>n; for (i=0; i<=n; ++i) fin>>d[i];
      for (i=1; i<n; ++i) a[i][i+1]=d[i-1]*d[i]*d[i+1];
     for (w=2; w<n; ++w)
      for (i=1; i<=n-w; ++i){
          j=i+w; a[i][j]=inf;
          for (k=i; k<j; ++k)
           a[i][j]=min(a[i][j],a[i][k]+a[k+1][j]+d[i-1]*d[k]*d[j];
           }
     fout<<a[1][n];
  return(0);
}