#include <bits/stdc++.h>
using namespace std;

typedef long long LL;
const int M=405;
LL a[M];
LL dp[M][M];

int main()
{
	int n; scanf("%d",&n);
	for(int i=1;i<=n;i++)
		scanf("%lld",&a[i]);
	for(int i=1;i<=n;i++)
		a[i]+=a[i-1];
	memset(dp,0x3f,sizeof(dp));
	for(int i=1;i<=n;i++)
		dp[i][i]=0;
	for(int len=2;len<=n;len++)
		for(int l=1,r=l+len-1;r<=n;l++,r++)
		{
			for(int k=l;k<r;k++)
				dp[l][r]=min(dp[l][r],dp[l][k]+dp[k+1][r]);
			dp[l][r]+=a[r]-a[l-1];
		}
	printf("%lld\n",dp[1][n]);
	return 0;
}