CF768C Jon Snow and his Favourite Number

题目描述

琼恩·雪诺现在必须与异鬼战斗。他有 $n$ 名游骑兵,每名游骑兵都有自己的力量值。 琼恩还有一个他最喜欢的数字 $x$。每个游骑兵只能与力量值等于自己力量值的异鬼战斗。然而,他认为自己的游骑兵很弱,需要提升。琼恩想,如果他将一些游骑兵的力量值与最喜欢的数字 $x$ 进行按位异或,也许就能得到高力量值的士兵。于是,他决定执行以下操作 $k$ 次: - 把所有游骑兵按力量值递增的顺序排成一条直线。 - 将每个奇数位置(第 $1$、$3$、$5$、$\cdots$ 个)的游骑兵的力量值与 $x$ 进行按位异或,并更新其力量值。 假设琼恩有 $5$ 名游骑兵,力量值为 $[9, 7, 11, 15, 5]$,他执行 $1$ 次操作,$x = 2$。他首先按力量值排序,得到 $[5, 7, 9, 11, 15]$。然后他这样做: 1. 第 $1$ 名游骑兵的力量更新为 $5 \oplus 2$,即 $7$。 2. 第 $2$ 名游骑兵的力量保持不变,即 $7$。 3. 第 $3$ 名游骑兵的力量更新为 $9 \oplus 2$,即 $11$。 4. 第 $4$ 名游骑兵的力量保持不变,即 $11$。 5. 第 $5$ 名游骑兵的力量更新为 $15 \oplus 2$,即 $13$。 这 $5$ 名游骑兵的新力量值为 $[7, 7, 11, 11, 13]$。 现在,琼恩想知道执行上述操作 $k$ 次后,游骑兵们力量值的最大值和最小值。他需要你的帮助来完成这个任务。你能帮助他吗?

输入格式

第一行包含三个整数 $n,k,x~(1  \le  n  \le  10^5,0  \le  k  \le  10^5,0  \le  x  \le  10^3)$——琼恩拥有的游骑兵数量,琼恩将执行操作的次数以及琼恩的最喜欢的数字。 第二行包含 $n$ 个整数,表示游骑兵的力量 $a_1, a_2, \cdots, a_n ~(0  \le  a_i  \le  10^3)$。

输出格式

输出两个整数,表示执行操作 $k$ 次后游骑兵的最大和最小力量。