#include<bits/stdc++.h> usingnamespace std; #ifdef LOCAL #define debug(...) fprintf(stdout, ##__VA_ARGS__) #else #define debug(...) void(0) #endif #define int long long inlineintread(){int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1; ch=getchar();}while(ch>='0'&&ch<='9'){x=(x<<1)+ (x<<3)+(ch^48);ch=getchar();}return x*f;} #define Z(x) (x)*(x) #define pb push_back #define fi first #define se second //#define M //#define mo //#define N int n, m, i, j, k, T; int a[30];
intdp(int l, int r, int fl, int fr){ if(l>r) return0; int ans=1e18; for(int k=l; k<=r; ++k) ans=min(ans, dp(l, k-1, fl, fl+fr)+dp(k+1, r, fl+fr, fr)+a[k]*(fl+fr)); return ans; }