Farmer John 忘记修补农场围栏上的洞,他的 $N$ 头奶牛 $(1 \le N \le 1,000)$ 逃了出去,四处肆虐!每头奶牛在围栏外每待一分钟,就造成一美元损失。FJ 必须逐头前去套上笼头,让她平静下来并停止造成损失。
幸好奶牛们位于农场外道路上一条直线的不同位置。FJ 知道每头奶牛 $i$ 相对于他出发的大门(位置 0)的位置 $P_i$,满足 $(-500,000 \le P_i \le 500,000, P_i \ne 0)$。
FJ 每分钟移动一单位距离,可以瞬间套好笼头。请确定前往各头奶牛的顺序,使总损失最小,并计算此时最小的总损失。
输入格式
- 第 1 行:奶牛数量 $N$。
- 第 $2\ldots N+1$ 行:第 $i+1$ 行包含整数 $P_i$。
输出格式
- 第 1 行:最小总损失。
样例
输入格式 1
4 -2 -12 3 7
输出格式 1
50
说明
四头奶牛的位置为 $-2$、$-12$、$3$ 和 $7$。
最优访问顺序为 $-2,3,7,-12$。FJ 用 2 分钟到达位置 $-2$,这头奶牛共造成 2 美元损失。
接着他到位置 $3$(距离 5),这头奶牛累计造成 $2 + 5 = 7$ 美元损失。
他再用 4 分钟到位置 $7$,这头奶牛造成 $7 + 4 = 11$ 美元损失。
最后,他用 19 分钟到位置 $-12$,损失为 $11 + 19 = 30$ 美元。
总损失为 $2 + 7 + 11 + 30 = 50$ 美元。
题目作者:Chris Tzamos,2006