Cod sursa(job #2759055)

Utilizator KlinashkaDiacicov Calin Marian Klinashka Data 14 iunie 2021 23:49:33
Problema Parantezare optima de matrici Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include <bits/stdc++.h>
using namespace std;

int main() {
  freopen("podm.in", "r", stdin);
  freopen("podm.out", "w", stdout);
  int n;
  scanf("%d", &n);
  int a[n+1];
  for(int i=0;i<=n;i++)
    scanf("%d", &a[i]);
  unsigned long long dp[n][n];
  for(int l=n-1;l>=0;l--) {
    dp[l][l] = 0;
    for(int r = l+1;r<n;r++) {
      for(int i=l;i<r;i++) {
        dp[l][r] = min(dp[l][r], dp[l][i]+dp[i+1][r]+(unsigned long long)a[l]*a[i+1]*a[r+1]);
      }
    }
  }
  printf("%u", dp[0][n-1]);
  return 0;
}