2138. 这是谁的尾巴( awa ?!

这是谁的尾巴?

pwp 很想摸一摸袁神的尾巴,于是善良的谦神准备帮助他实(霍)现(霍)愿(袁)望(神)。

谦神在市场上发现了各式各样的尾巴——

尾巴的颜色串是一个长度为 n 的数组 a ,代表尾巴可以被分为 n 段,a_i 代表了第 i 段的颜色值 (1\leq i \leq n)

但是,pwp 希望,最终尾巴的颜色串中,颜色值是递增的(即:对于 i>1a_i>a_{i-1} )。 很显然,市场上并不总能有尾巴满足 pwp 的需求()

幸运的是,谦神会一种交换两段尾巴颜色值的魔法! 而这个魔法,需要一个启动秘钥——X

当魔法启动后,对于两个颜色值为 c1 c2 的尾巴段,当 c1 \& c2 = X 的时候可以生效。

谦神可以指定任意两个尾巴段执行魔法任意次数。

pwp 不喜欢太小的数,于是谦神希望能够找到一个满足要求的“最大”秘钥 X

输入

第一行输入一个整数 T (1\leq T \leq 10^4) ,表示测试用例的数量

每一个测试用例输入一个 n (1\leq n \leq 2\cdot 10^5)

接下来一行输入 n 个整数 a_1, a_2 \dots a_n (0 \leq a_i \leq n - 1),保证 a 是一个 0n-1 的排列,并且 \exists i < n 使得 a_i > a_{i+1}

数据保证所有测试用例的 n 之和小于等于 5\cdot 10^5

输出

对于每个测试用例,输出一个整数表示 X

可以证明,对于输入数据,这样一个 X 总是存在。

样例

标准输入 复制文本
4
4
0 1 3 2
2
1 0
7
0 1 2 3 5 6 4
5
0 3 2 1 4
标准输出 复制文本
2
0
4
1

提示

按位与(&)是对两个二进制数逐位进行比较,只保留两个数相同位置上都为 1 的位。

结果的每一位都是输入数相应位置上位的逻辑与运算结果。

(6)_{10}\ \&\ (3)_{10}\ =\ (2)_{10} ,即 (110)_2\ \&\ (011)_2\ =\ (010)_2

来源

2024 华南师范大学百度杯新生赛 正式赛 Div.2 新生赛道

登录以提交代码。
单点时限 1 秒
内存限制 128 MB
提交 199
通过 54