Cod sursa(job #969039)

Utilizator mitrutstrutMitrea Andrei Ionut mitrutstrut Data 3 iulie 2013 13:08:21
Problema Parantezare optima de matrici Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
#define N 510
using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
long long inf=1<<25;
long long m[N][N],d[N],n,i,j,k,l;
int main ()
{
    f>>n;
    inf*=inf;
    for(i=0;i<=n;++i)
        f>>d[i];
    for(i=1;i<=n;++i)
        m[i][i]=0;
    for(l=2;l<=n;++l)
        for(i=1;i<=n-l+1;++i)
        {
            j=i+l-1;
            m[i][j]=inf;
            for(k=i;k<=j-1;++k)
                m[i][j]=min(m[i][j],m[i][k]+m[k+1][j]+d[i-1]*d[k]*d[j]);
        }
    g<<m[1][n];
    return 0;
}