Cod sursa(job #2294313)

Utilizator Anakin1001George Giorgiu Gica Anakin1001 Data 2 decembrie 2018 11:15:17
Problema Parantezare optima de matrici Scor 80
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#define For(i,a,b) for(int i=a;i<=b;i++)
#define inf 50000000000ll
using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
int n,i,j,k,l;
long long d[502],a[505][505];
int main()
{   f>>n;
    For(i,1,n+1)
        f>>d[i];
    For(i,1,n)
    For(j,i+1,n)
        a[i][j]=inf;
    For(i,1,n-1)
        a[i][i+1]=d[i]*d[i+1]*d[i+2];
    For(l,3,n)
    For(i,1,n-l+1){
        j=i+l-1;
        For(k,i,j){
            a[i][j]=min(a[i][j],d[i]*d[k+1]*d[j+1]+a[i][k]+a[k+1][j]);
        }
    }
    g<<a[1][n];
    return '\0';
}