Cod sursa(job #813000)

Utilizator alex-rusuAlex Rusu alex-rusu Data 14 noiembrie 2012 20:12:21
Problema Parantezare optima de matrici Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
using namespace std;

long long n,v[505],m[505][505],i,j,k;

int min (int a, int b)
{
	if (a<b)
		return a;
	return b;
}

int main()
{
	ifstream f("podm.in");
	ofstream g("podm.out");
	f>>n;
	for (i=0;i<=n;i++)
		f>>v[i];
	long long minim;
	for(i=n;i>0;i--)
        for(j=i+1;j<=n;j++)
        {
            minim=(2LL)<<39;
            for(k=i;k<j;k++)
				minim=min(minim, m[i][k]+m[k+1][j]+v[i-1]*v[k]*v[j]);
			m[i][j]=minim;
            
        }
    g<<m[1][n];
	
	f.close();
	g.close();
	return 0;
}