N=int(input())
A=list(map(int,input().split()))
# 単純なのはN_P_Nとおり,つまりN!とおりすべて調べること
# 貪欲的にかく位置にたいしてその位置に移動した時のスコアの変動を選ぶ
# 最適マッチング的にとけんじゃね？ かく子供は自分の最も好きなところを選ぶ．
# もし仮にすでにその場所が占拠されているときは，すでに選挙しているスコアの人のところを選んで自分のスコアと比較する
# 自分のスコアがより高ければその場所を占拠する(すでに選挙していひとはまたプールに戻る)．もし自分のスコアが低ければ別の候補を選ぶ
from collections import deque
Machi = deque(list(range(N)))
Result =[[-1,-100] for i in range(N)] # -1はだれにも占領されていないことを表す
Scores = [[abs(pos-i)*A[pos] for i in range(N)] for pos in range(N)]
while Machi:
    pos = Machi.popleft()
    Score = Scores[pos]
    while True:
        max_score = max(Score)
        max_index = Score.index(max_score)
        if Result[max_index][1]<max_score:
            Result[max_index][1]=max_score
            loser = Result[max_index][0]
            Result[max_index][0]=pos
            if not loser==-1:
                Machi.appendleft(loser)
            break
        Score[max_index]=-1
res=0
for r in Result:
    res+=r[1]
print(res)



