Harbour.Space Scholarship Contest 2021-2022 (open for everyone, rated, Div. 1 + Div. 2)
H
XOR and Distance
Codeforces
2900
原题
← GI →
翻译中…

You are given an array $a$ consisting of $n$ distinct elements and an integer $k$. Each element in the array is a non-negative integer not exceeding $2^k-1$.

翻译中…

Let's define the XOR distance for a number $x$ as the value of

翻译中…

$$f(x) = \min\limits_{i = 1}^{n} \min\limits_{j = i + 1}^{n} |(a_i \oplus x) - (a_j \oplus x)|,$$

翻译中…

where $\oplus$ denotes the bitwise XOR operation.

翻译中…

For every integer $x$ from $0$ to $2^k-1$, you have to calculate $f(x)$.

翻译中…

Input

翻译中…

The first line contains two integers $n$ and $k$ ($1 \le k \le 19$; $2 \le n \le 2^k$).

翻译中…

The second line contains $n$ integers $a_1, a_2, \dots, a_n$ ($0 \le a_i \le 2^k-1$). All these integers are distinct.

翻译中…

Output

翻译中…

Print $2^k$ integers. The $i$-th of them should be equal to $f(i-1)$.

翻译中…

Note

翻译中…

Consider the first example:

翻译中…
  • for $x = 0$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[6, 0, 3]$, and the minimum absolute difference of two elements is $3$;
  • for $x = 1$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[7, 1, 2]$, and the minimum absolute difference of two elements is $1$;
  • for $x = 2$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[4, 2, 1]$, and the minimum absolute difference of two elements is $1$;
  • for $x = 3$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[5, 3, 0]$, and the minimum absolute difference of two elements is $2$;
  • for $x = 4$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[2, 4, 7]$, and the minimum absolute difference of two elements is $2$;
  • for $x = 5$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[3, 5, 6]$, and the minimum absolute difference of two elements is $1$;
  • for $x = 6$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[0, 6, 5]$, and the minimum absolute difference of two elements is $1$;
  • for $x = 7$, if we apply bitwise XOR to the elements of the array with $x$, we get the array $[1, 7, 4]$, and the minimum absolute difference of two elements is $3$.
翻译中…

样例

Input #1
3 3
6 0 3
Output #1
3 1 1 2 2 1 1 3
InputCopy OutputCopy
Input #2
3 4
13 4 2
Output #2
2 2 6 6 3 1 2 2 2 2 1 3 6 6 2 2
InputCopy OutputCopy
题目信息
标签
位运算
分治
树

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。