Pagini recente » Cod sursa (job #328054) | Cod sursa (job #1209585) | Cod sursa (job #2803042) | Cod sursa (job #745337) | Cod sursa (job #1533351)
#include <stdio.h>
unsigned long long v[501];
unsigned long long m[501][501];///m[i][j]=nr optim de a inmultiri pt matricele de la i la j
int main()
{
FILE *f;
int n,i,j,k;
unsigned long long aux;
f=fopen("podm.in","r");
fscanf(f,"%d",&n);
for (i=1; i<=n+1; i++)
fscanf(f,"%llu",&v[i]);
fclose(f);
///costul de a inmulti o singura matrice este 0
for (j=1; j<n; j++)
{
for (i=1; i<=n-j; i++)
{
m[i][i+j]=100000000000000000ULL;
for (k=i; k<i+j; k++)
{
aux=m[i][k]+m[k+1][j+i]+v[i]*v[k+1]*v[j+i+1];
if (aux < m[i][i+j])
m[i][i+j]=aux;
}
}
}
f=fopen("podm.out","w");
fprintf(f,"%llu",m[1][n]);
fclose(f);
}