Cod sursa(job #1315926)

Utilizator cristibogdanPatrascu Cristian cristibogdan Data 13 ianuarie 2015 12:30:17
Problema Parantezare optima de matrici Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
#include <limits.h>
using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
long long d[501][501],INF;
int k,l,n,i,j,a[502];
int main()
{f>>n;
INF=LONG_LONG_MAX;
for(i=0;i<=n;i++)
f>>a[i];
for(l=2;l<=n;l++){
    for(i=1;i<=n-l+1;i++){
        j=i+l-1;
            d[i][j]=INF;
        for(k=i;k<j;k++)
            if(d[i][j]>d[i][k]+d[k+1][j]+1ll*a[i-1]*a[k]*a[j])
                d[i][j]=d[i][k]+d[k+1][j]+1ll*a[i-1]*a[k]*a[j];


        }
        }
g<<d[1][n];
    return 0;
}