#include <bits/stdc++.h>
using namespace std;
#define int unsigned long long
int k;
vector<int> v, n, m;
int dp[505][505];
signed main()
{
freopen("podm.in", "r", stdin);
freopen("podm.out", "w", stdout);
ios::sync_with_stdio(0);
cin.tie(0);
cin>>k;
for(int i=1;i<=k+1;++i){
int x; cin>>x;
v.push_back(x);
}
n.push_back(0); m.push_back(0);
for(int i=0;i<k;++i){
n.push_back(v[i]);
m.push_back(v[i+1]);
}
for(int j=1;j<=k;++j){
for(int i=j-1;i>=1;--i){
dp[i][j] = min(dp[i][j-1] + n[i]*n[j]*m[j],
dp[i+1][j] + n[i]*m[i]*m[j]);
}
}
cout<<dp[1][k];
return 0;
}