Dave 有一个长度为 n 的非负整数序列 a_{1 \dots n}和一个非负整数 m。
他希望知道是否有一个 a 的非空子序列,使得子序列中所有元素的按位与(bitwise AND)结果为 m。
换言之,他想知道是否存在一个下标序列 i_{1\dots k}(1\leq k),满足 1 \leq i_1 \lt i_2 \lt \dots \lt i_k\leq n,且 a_{i_1} \& a_{i_2} \& \dots \& a_{i_k} =m .
第一行一个整数 T 表示数据组数。
对于每组数据:
第一行两个整数 n,m。
第二行 n 个非负整数 a_i
对于每组数据,如果存在这样的非空子序列,输出一行 Yes
,否则输出一行 No
。
4 5 6 0 0 0 2 2 5 21 29 29 29 29 31 5 11 27 27 31 27 27 5 9 13 15 27 11 27
No No No Yes
样例说明:
在第四组数据中,整个序列即为所求子序列。
对于 30% 的数据,1 \leq \sum n \leq 20,0 \leq a_i,m \lt 32;
对于 60% 的数据,1 \leq \sum n \leq 10^3,0 \leq a_i,m \lt 2^{10};
对于 100% 的数据,1\leq T \leq 10^5,1 \leq \sum n \leq 5\times 10^5,0 \leq a_i,m \lt 2^{30};