#YDRS003A. 时暮的思眷 Le Souvenir avec le crepuscule

时暮的思眷 Le Souvenir avec le crepuscule

题目描述

云浅有两个正整数 x,yx,y

现在 Furina 可以选一个正整数 dd 满足 0d<2k0\le d<2^k,然后把 xx 变为 x xor dx\text{ xor }dyy 变为 y or dy\text{ or }d

Furina 想要使操作完后 x and yx\text{ and }y 的值尽可能大,求这个最大值与相应的 dd

如果有多解,输出最小的 dd

输入格式

本题有多组数据。 第一行一个正整数 TT 表示数据组数。

接下来 TT 行,每行三个非负整数 x,y,kx,y,k

输出格式

对于每组数据,输出一行两个正整数,分别表示最大的 x and yx\text{ and }y 以及选取的 dd。如果有多个 dd 使得这个值可以达到最大值,输出最小的即可。

样例 11 输入

5
2 3 1
2 3 0
23 44 3
114 51 4
114514 1919810 16

样例 11 输出

3 1
2 0
4 0
63 13
84975 16557

样例 11 解释

不难验证给出的 dd 符合题意且使得 $x\leftarrow x\text{ xor }d,y\leftarrow y\text{ or }d$ 之后,x and yx\text{ and }y 的值最大。

对于第三组数据,另一种合法的方案是取 d=3d=3,但这样无法使得 dd 的值最小化。

子任务约束

对于所有数据,1T2×105,0x,y<230,0k<301\le T\le 2\times 10^5,0\le x,y<2^{30},0\le k<30

子任务编号 TT x,yx,y kk 特殊性质 分值 依赖子任务
Subtask #1 10\le 10 100\le 100 5\le 5 3030
Subtask #2 2×104\le 2\times 10^4 <230<2^{30} <30<30 x=yx=y 2020
Subtask #3 3030 11
Subtask #4 2×105\le 2\times 10^5 2020 33