#include <bits/stdc++.h>

using namespace std;
const double pi=acos(-1.0);
const int N=2e3+10;
typedef long long ll;
struct p{
    int index;
    int t;
}a[N];
int cmp(p x,p y){
    return x.t>y.t;
}
ll dp[N][N];
int main()
{
   int n;
   cin>>n;
   for(int i=0;i<n;i++){
        a[i].index=i;
        cin>>a[i].t;
   }
   sort(a,a+n,cmp);
   for(int i=0;i<n;i++){
        for(int j=0;j+i<n;j++){
            int k=i+j;
            dp[i+1][j]=max(dp[i+1][j],dp[i][j]+(ll)1*a[k].t*abs(a[k].index-i));
            dp[i][j+1]=max(dp[i][j+1],dp[i][j]+(ll)1*a[k].t*abs(a[k].index-n+1+j));
        }
   }
   ll ans=0;
   for(int i=0;i<=n;i++)
    ans=max(ans,dp[i][n-i]);
    cout<<ans<<endl;
}

