编程题
### 问题描述
小小蓝是一家名为"蓝快递"的外卖公司的负责人。"蓝快递"致力于为不同地点之间的食物外卖提供高效的配送服务。每个地点都有特定的外卖需求,而"蓝快递"拥有一支专业的配送团队,他们会根据需求将美食从一个地点快速送达到另一个地点,并收取相应的配送费用。
现在,"蓝快递"面临着一项挑战:某个城市有 $n$ 个地点,这些地点可以分为两类。一类是"蓝快递"的合作伙伴,他们自行提供食物并需要"蓝快递"进行配送;另一类是普通消费者,他们需要获得完美的外卖体验。
公司调研发现,从地点 $i$ 配送 $m$ 个单位的食物到地点 $j$ 时,配送费用为 $m \times |i-j|$。为了满足所有地点的需求,小小蓝希望设计一个算法,计算出满足所有地点需求的最低配送费用。这样一来,"蓝快递"可以确保所有地点的外卖配送服务都得到满足,同时也能够有效地控制成本。
小小蓝需要你的帮助来解决这个问题。你能否设计一个算法,帮助小小蓝计算出最低的配送费用,使得"蓝快递"能够以高效和经济的方式满足所有地点的外卖配送需求呢?
### 输入格式
输入的第 $1$ 行包含一个整数 $n$,表示地点的数量。
输入的第 $2$ 行包含 $n$ 个整数,其中整数 $a_i \geq 0$ 时表示第 $i$ 个地点提供的食物量,$a_i \lt 0$ 时表示第 $i$ 个地点的外卖需求量。题目保证 $\sum\limits_{i=1}^{n}a_i=0$。
### 输出格式
输出一个整数,表示满足所有地点需求的最少配送费用。
### 样例输入
```text
6
-3 -4 5 1 -4 5
```
### 样例输出
```text
18
```
### 说明
我们可以考虑将提供的食物量从头开始匹配,依次满足外卖需求量。
第 $3$ 个地点的食物,给第 $1$ 个地点配送 $3$ 个单位,距离为 $2$,给第 $2$ 个地点配送 $2$ 个单位,距离为 $1$。
第 $4$ 个地点的食物,给第 $2$ 个地点配送 $1$ 个单位,距离为 $2$。
第 $6$ 个地点的食物,给第 $2$ 个地点配送 $1$ 个单位,距离为 $4$,给第 $5$ 个地点配送 $4$ 个单位,距离为 $1$。
可以得到配送费用为 $(3*2+2*1)+(1*2)+(1*4+4*1)=18$,显然在这种情况下,配送费用是最少的。
### 评测数据范围
对于 30% 的测试数据,$1\leq n \leq 100$,$-100 \leq a_i \leq 100$。
对于 100% 的测试数据,$1\leq n \leq 10^5$,$-10^9 \leq a_i \leq 10^9$。