Cod sursa(job #3305557)

Utilizator davidgrusGeorge David Rusanescu davidgrus Data 2 august 2025 18:08:16
Problema Parantezare optima de matrici Scor 80
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#pragma GCC optimize("O3,unroll-loops,fast-math")
#include<bits/stdc++.h>
#define inf 0x3f3f3f3f
#define pb push_back
#define int long long
using namespace std;

const int dm=505;
int dp[dm][dm],v[dm],n,i,j,len,k;

signed main()
{
    ifstream fin("podm.in");
    ofstream fout("podm.out");

    fin>>n;

    for(i=0;i<=n;++i)
        fin>>v[i];

    for(i=1;i<=n;++i)dp[i][i]=0;

    for(len=2;len<=n;++len)
    for(i=1;i<=n-len+1;++i)
    {
        j=i+len-1;

        dp[i][j]=inf;

        for(k=i;k<j;++k)
            dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1][j]+v[i-1]*v[k]*v[j]);
    }
    fout<<dp[1][n];
    return 0;

}