Loading [MathJax]/jax/output/HTML-CSS/jax.js
编程题
                卓越指数

题目描述

小蓝有 n 枚奖章。他想给他的 n 个士兵每人一枚奖章。

每枚奖章都有对应的卓越指数,表示获得者的卓越程度。 一个硬币能把卓越指数提升1。

对于每一对士兵,其中一个应该得到一枚卓越指数高于或低于另一个士兵的奖章。

卓越指数的精确值并不重要,只需要各不相同即可。

小蓝知道哪个士兵最初应该获得哪枚奖章。

但是目前的问题是有些奖章的卓越指数是一样的。请帮他计算一下,他最少需要花多少个硬币才能让每枚奖章获得不一样的卓越指数。

输入描述

1 行输入 1 个整数n (1 \leq  n \leq  3\times 10^5).

2 行输入 n 个整数 a_i (1 \leq  a_i  \leq  n),表示目前每一枚奖章的卓越指数。

输出描述

输出1个整数——表示小蓝最少需要花费的硬币数。

样例输入

5
1 2 3 2 5

样例输出

2

样例解释

只需要花 2 个硬币将第二、第三枚奖章的卓越指数分别提升 1 即可。

查看答案
赣ICP备20007335号-2