Cod sursa(job #376113)

Utilizator ProcopliucProcopliuc Adrian Procopliuc Data 20 decembrie 2009 19:01:21
Problema Parantezare optima de matrici Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
# include <stdio.h>
int a[600],m[600][600],i,j,l,k,min,n;
int main ()
{
	freopen ("podm.in","r",stdin);
	freopen ("podm.out","w",stdout);
	
	 scanf ("%i",&n);
	 for (i=1;i<=n+1;i++)
		 scanf ("%i",&a[i]);
	 
	 
	  for (i=1;i<n;i++)
		  for (j=1;j<n;j++)
		  if (i+j<=n)
		  {
			  l=j+i;
			  min=32000;
			  for (k=j;k<l;k++)
			  {
				  
				  if (min>m[j][k]+m[k+1][l]+a[j]*a[k+1]*a[l+1])
					  min=m[j][k]+m[k+1][l]+a[j]*a[k+1]*a[l+1];
				  
				  
			  }
		  m[j][l]=min;
		  }
		  
		  
		  
		  
		  printf ("%i",m[1][n]);
		return 0;
}