#include <bits/stdc++.h>
using namespace std;
using lint = long long int;
using P = pair<lint, lint>;

lint dp[2123][2123];

template<class T> void chmax(T &a, T b) { a = max(a, b); }

int main() {
    lint n;
    cin >> n;

    vector<P> a(n);
    for(lint i=0; i<n; i++) {
        lint x;
        cin >> x;
        a.emplace_back(x, i);
    }
    sort(a.rbegin(), a.rend());

    fill(&dp[0][0], &dp[2123][0], -1e18);
    dp[0][0] = 0;
    for(lint all=0; all<n; all++) {
        auto [x, i] = a[all];
        for(lint mn=0; mn<=all; mn++) {
            chmax(dp[all+1][mn], dp[all][mn] + x * abs(n-1-all+mn-i));
            chmax(dp[all+1][mn+1], dp[all][mn] + x * abs(mn-i));
        }
    }

    cout << *max_element(begin(dp[n]), end(dp[n])) << endl;
}