Cod sursa(job #1049049)

Utilizator kitzTimofte Bogdan kitz Data 6 decembrie 2013 20:29:10
Problema Parantezare optima de matrici Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;
ifstream f("podm.in");
ofstream g("podm.out");
int n;
long long d[505], cost[505][505];
int main()
{
    f >> n;
    for(int  i = 0 ; i <= n; i ++)
        f >> d[i];
    f.close();
    long long aux = 0;
    for(int j = 2 ; j <= n; j++)
        for(int i = j-1; i >=1; i--){
            long long m = 0xfffff;
            for(int k = i; k < j; k++){
                aux = cost[i][k] + cost[k+1][j] + d[i-1]*d[k]*d[j];
                if(aux < m) m = aux;
            }
            cost[i][j] = m;
        }
    g << cost[1][n] <<"\n";
    return 0;
}