Cod sursa(job #592931)

Utilizator mihai995mihai995 mihai995 Data 31 mai 2011 15:02:08
Problema Algoritmul Bellman-Ford Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
using namespace std;

const int N=505;
const long long inf=(long long)1<<60;
long long v[N][N],a[N],n;

ifstream in("podm.in");
ofstream out("podm.out");

inline long long min(long long a,long long b)
{
    return a<b ? a : b;
}

int main()
{
    int i,j,k,d;
    in>>n;
    for (i=0;i<=n;i++)
    {
        in>>a[i];
        for (j=0;j<=n;j++)
            v[i][j]=inf;
        v[i][i]=0;
    }
    for (d=1;d<n;d++)
        for (j=d+1;j<=n;j++)
        {
            i=j-d;
            for (k=i;k<j;k++)
                v[i][j]=min(v[i][j],v[i][k]+v[k+1][j]+a[i-1]*a[k]*a[j]);
        }
    out<<v[1][n]<<"\n";
    return 0;
}