题号:NC247341
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
给定长度为

的非负整数序列

,你每次可以进行如下操作:
选择一对
%2Ci%20%5Cneq%20j)
,将

赋值为

,

赋值为

(两个操作同时进行)。
即可以理解成,令

,然后执行执行

。
其中

代表二进制按位与,

代表二进制按位或。
你可以进行任意次上述操作,你希望最终的序列字典序尽量小,输出这个字典序最小的序列。
输入描述:
第一行数据组数
,对于每组数据:
第一行一个正整数
,接下来一行
个整数,分别为

输出描述:
对于每组数据,输出一行
个整数,代表可以得到的字典序最小的序列。