Cod sursa(job #1033377)

Utilizator dica69Alexandru Lincan dica69 Data 16 noiembrie 2013 20:13:19
Problema Parantezare optima de matrici Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>

using namespace std;
long long d[1000],c[503][504],n,j1,j,i,max1;
FILE *f,*g;
int main()
{ifstream f("podm.in");
ofstream g("podm.out");
f>>n;
f>>d[0]>>d[1];
for (i=2;i<=n;i++)
{f>>d[i];
c[i-1][i]=d[i-2]*d[i-1]*d[i];
for (j=i-2;j>=1;j--)
{max1=100000000000000;
for (j1=i;j1>=j;j1--)
{if (max1>c[j][j1-1]+c[j1][i]+d[j-1]*d[j1-1]*d[i]) max1=c[j][j1-1]+c[j1][i]+d[j-1]*d[j1-1]*d[i];
if (max1<c[j][i] || c[j][i]==0) c[j][i]=max1;
}
}
}
g<<c[1][n];
f.close();
g.close();
    return 0;
}