3751 - 兔子快跑cowrun
描述

一名饲养员站在一条数轴的 0 点处。数轴上有 N 只兔子,第 i 只兔子所在的位置为 P_i(保证 P_i ≠ 0)。每只兔子每分钟会啃掉 1 根胡萝卜,只要它还没有被抓住,破坏就会一直持续。

饲养员每分钟只能沿数轴移动一格,并且可以在到达某只兔子所在位置的瞬间将其抓住,抓住后该兔子便不再造成破坏。饲养员希望抓住所有兔子时,兔子啃掉的胡萝卜总数最小,请你求出这个最小值。

输入
  • 第一行一个整数 N,表示兔子的数量。

  • 接下来 N 行,每行一个整数 P,表示一只兔子所在的位置。

输出

一行一个整数,表示抓住所有兔子后,兔子啃掉胡萝卜总数的最小值。

样例

输入

4
-2
-12
3
7

输出

50

输入

7
-32
-22
-17
-48
-43
23
28

输出

405
提示

本题使用标准输入输出(stdin/stdout),不需要写 freopen。

样例解释 1

一种最优的抓取顺序为:先抓 −2,花费 2 个时间,这只兔子造成破坏 2;再抓 3,累计花费 7 个时间,这只兔子造成破坏 7;再抓 7,累计花费 11 个时间,这只兔子造成破坏 11;最后抓 −12,累计花费 30 个时间,这只兔子造成破坏 30。总破坏值为 2 + 7 + 11 + 30 = 50。

数据范围与约定

  • 对于约 40% 的数据,1 ≤ N ≤ 10;

  • 对于约 30% 的数据,1 ≤ N ≤ 200;

  • 对于 100% 的数据,1 ≤ N ≤ 1000。

  • 所有位置满足 −500000 ≤ P ≤ 500000 且 P ≠ 0。

来源
CSP-J模拟赛7
标签
题目参数
时间限制 1 秒
内存限制 256 MB
提交次数 30
通过次数 7