P15138 [SWERC 2025] Dungeon Equilibrium

题目描述

你正在开发一款新的 RPG 游戏,其中每个怪物种类都有一条特殊的规则,规定了它在一个关卡中应该出现的次数。 一个关卡用一个整数数组 $a_1, a_2, \dots, a_n$ 表示,每个整数代表一个怪物的种类。 一个关卡被认为是**平衡的**,当且仅当对于每个出现的怪物种类 $x$,该种类的怪物数量恰好为 $x$。例如,一个平衡的关卡可能有 $3$ 个种类为 $3$ 的怪物、$5$ 个种类为 $5$ 的怪物,以此类推。一个空的关卡(没有任何怪物)也被认为是平衡的。 不幸的是,你当前的关卡设计不一定是平衡的。你可以删除一些怪物(即从数组中移除元素)来使其平衡。 给定数组 $a_1, a_2, \dots, a_n$,求使得关卡平衡所需删除的最少怪物数量。

输入格式

第一行包含一个整数 $n$($1 \le n \le 1000$)—— 关卡中当前怪物的数量。 第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($0 \le a_i \le n$)—— 怪物的种类。

输出格式

输出一行一个整数:为了使关卡平衡,需要删除的最少怪物数量。

说明/提示

#### 样例 1 解释 在第一个例子中,你可以删除一个种类为 $1$ 的怪物和一个种类为 $3$ 的怪物。此时关卡变为 $[1, 2, 2]$,这是平衡的(它有一个种类为 $1$ 的怪物和两个种类为 $2$ 的怪物)。你无法通过少于 $2$ 次的删除使关卡平衡,因此答案是 $2$。 #### 样例 2 解释 在第二个例子中,你可以将关卡变为 $[1, 2, 4, 4, 4, 4, 2]$。 翻译由 DeepSeek 完成