Pagini recente » Cod sursa (job #2432260) | Cod sursa (job #677884) | Cod sursa (job #485475) | Cod sursa (job #626285) | Cod sursa (job #2762285)
#include <fstream>
#include <deque>
#include <vector>
#include <bitset>
#include <queue>
#include <unordered_set>
#include <algorithm>
#include <cmath>
#include <limits.h>
#define MOD 123457
using namespace std ;
ifstream cin ("podm.in") ;
ofstream cout ("podm.out") ;
pair<unsigned long long, unsigned long long> v[509] ;
unsigned long long dp[509][509] ;
int main()
{
int n ;
cin >> n ;
cin >> v[1].first ;
for(int f = 1 ; f <= n ; f ++)
{
cin >> v[f].second ;
v[f + 1].first = v[f].second ;
}
for(int f = n ; f ; f --)
for(int e = f ; e <= n ; e ++)
{
dp[f][e] = LONG_MAX ;
if(f == e)dp[f][e] = 0 ;
else
for(int k = f ; k <= e ; k ++)
dp[f][e] = min(dp[f][k] + dp[k + 1][e] + v[f].first * v[k].second * v[e].second, dp[f][e]) ;
}
cout << dp[1][n] ;
return 0 ;
}