#include using namespace std; const long long INF = 100000000000; int main(){ int N; cin >> N; vector A(N); for (int i = 0; i < N; i++){ cin >> A[i]; } vector dp(N + 1, 0); for (int i = 0; i < N; i++){ int L = i, R = i; while (L > 0){ if (A[L - 1] <= A[i]){ L--; } else { break; } } while (R < N - 1){ if (A[R + 1] <= A[i]){ R++; } else { break; } } for (int j = L; j <= i; j++){ for (int k = i + 1; k <= R + 1; k++){ dp[k] = max(dp[k], dp[j] + (long long) (k - j) * abs(A[i])); } } } cout << dp[N] << endl; }