P9178 [COCI 2022/2023 #5] Diskurs

题目描述

给你 $n$ 个非负整数 $a_1, a_2, \cdots a _n$,任何一个都小于 $2^m$。 对于其中的每一个数,你都要找出它与数组中其他元素之间的最大哈明距离。 两个非负整数的哈明距离被定义为在这些数字的二进制表示中,它们之间有多少个不同的位置(如果有必要,加上前导零)。 形式上,对于每个 $i$ 求: $$\max\limits_{1\leq j\leq n} \operatorname{hamming}(a_i,a_j)$$

输入格式

第一行包含两个整数 $n$ 和 $m(1\leq n\leq 2^ m,1\leq m\leq 20)$。 第二行包含 $n$ 个数字 $a_i(0 \leq a_i < 2^ m)$。

输出格式

一行 $n$ 个数,第 $i$ 个数表示 $a_i$ 与数组中其他元素之间的最大哈明距离。

说明/提示

| Subatask | $\text{pts}$ | 限制 | | :----------: | :----------: | :----------: | | $0$ | $0$ | 是样例 | | $1$ | $20$ | $m\leq 10$ | | $2$ | $25$ | $m\leq 16$ | | $3$ | $25$ | 无 |