Cod sursa(job #735896)

Utilizator batistaUPB-Oprea-Cosmin-Dumitru batista Data 17 aprilie 2012 14:45:54
Problema Parantezare optima de matrici Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>
#define inf 9223372036854775807ll
#define min(a,b) (a<b)?a:b
using namespace std;
int n,d[502],i,j;
unsigned long long sol[502][502];
ofstream g("podm.out");
void dinamica()
{int i,j,k;unsigned long long minn;
	for(i=n;i>=1;i--)
	  for(j=i+1;j<=n;j++)
	  {
		  minn=inf;
		for(k=i;k<j;k++)
		  minn=min(minn,sol[i][k]+sol[k+1][j] + d[i]*d[k+1]*d[j+1]);//l1*c1*c2
		sol[i][j]=minn;
	  }
  g<<sol[1][n]<<"\n";
}
int main()
{
	ifstream f("podm.in");
	f>>n;
	for(i=1;i<=n+1;i++) f>>d[i]; //l=d[i],c=d[i+1];
	dinamica();
	f.close();g.close();
return 0;}