题单练习 位运算

A6462 | Welcome24ever 与数学

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

Welcome24ever 得到一个长度为 $n$ 的序列 $a_1,a_2,\ldots,a_n$。她可以进行任意多次如下操作:

  • 选择任意区间 $[l,r]$($1\le l\le r\le n$),并同时将所有满足 $0\le i\le r-l$ 的位置按如下方式替换:
$$ a_{l+i}\leftarrow a_{l+i}\ \&\ a_{r-i}, $$
其中 $\&$ 表示按位与运算。

例如,当 $n=5$ 且数组为 $[a_1,a_2,a_3,a_4,a_5]$,若选择区间 $[2,5]$,新数组变为
$[\,a_1,\ a_2\&a_5,\ a_3\&a_4,\ a_4\&a_3,\ a_5\&a_2\,]$。

Welcome24ever 想让序列中的最大值尽可能小。请你输出在进行若干次操作后,序列最大值的最小可能值。

输入格式

  • 第一行一个整数 $t$($1\le t\le 100$),表示测试用例数。
  • 对于每个测试用例:
- 第一行一个整数 $n$($1\le n\le 100$)。
- 第二行 $n$ 个整数 $a_1,a_2,\ldots,a_n$($0\le a_i\le 10^9$)。

输出格式

  • 对每个测试用例,输出一个整数,表示最小化后的序列最大值。

输入输出样例

输入 #1
4
2
1 2
3
1 1 3
4
3 11 3 7
5
11 7 15 3 7
输出 #1
0
1
3
3
C++ 编辑器
输入
输出