Cod sursa(job #966571)

Utilizator Kira96Denis Mita Kira96 Data 26 iunie 2013 11:42:54
Problema Parantezare optima de matrici Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<fstream>
#define N 510
#define inf 1<<25
using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
int m[N][N],d[N],n,i,j,k,l;
int main ()
{
	f>>n;
	for(i=0;i<=n;++i)
		f>>d[i];
	for(i=1;i<=n;++i)
		for(j=1;j<=n;++j)
			m[i][j]=inf;
	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;
			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;
}