CF2160A MEX Partition
题目描述
设多重集 $B$ 的一个划分为一些多重集 $s_1, s_2,\ldots, s_k$ 构成的集合,使得每个元素在 $B$ 与所有 $s_1,s_2,\ldots,s_k$ 中出现的次数相同。
例如,$\{1,2,3,3\}$ 的一些划分包括 $\{1,3\}+\{2,3\}$、$\{1,2,3,3\}$、以及 $\{2\}+\{1,3\}+\{3\}$,但是不包括 $\{1,2\}+\{3\}$。
如果所有多重集的 $\operatorname{mex}^*$ 均相同,则称这个划分为“合法”划分。合法划分的得分为划分中任意一个多重集的 $\operatorname{mex}$。
现给定一个大小为 $n$ 的多重集 $A$。请你求出所有合法划分的最小得分。
$^*$ 对于整数集 $c_1, c_2, \ldots, c_k$,$\operatorname{mex}$(最小未出现数)定义为不在集合 $c$ 中的最小非负整数 $x$。
输入格式
每个测试点包含多组测试数据。第一行包含测试组数 $t$($1 \le t \le 100$)。接下来是各组测试数据。
每组测试数据第一行包含整数 $n$($1 \leq n \leq 100$)。
第二行包含 $n$ 个整数 $A_1, A_2, \ldots, A_n$,表示多重集 $A$ 的元素($0 \leq A_i \leq 100$)。
不保证输入的元素按递增顺序给出。
输出格式
对于每组测试数据,输出所有合法划分的最小得分。
说明/提示
在第一个测试用例中,最小得分 $1$ 可以通过划分 $\{0\}+\{0\}+\{0\}$ 得到。该划分是合法的,因为每个多重集的 $\operatorname{mex}$ 都为 $1$,这即为该划分的得分。
在第二个测试用例中,我们可以将 $\{1,2\}$ 作为分组中唯一的多重集,该多重集的 $\operatorname{mex}$ 为 $0$。
由 ChatGPT 5 翻译