Problem11492--找子序列

11492: 找子序列

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 512 MiB

Description

Dave 有一个长度为 $n$ 的非负整数序列 $a_1 \sim a_n$ 和一个非负整数 $m$。
他希望知道是否有一个 $a$ 的非空子序列,使得子序列中所有元素的按位与(bitwise AND)结果为 $m$。
换言之,他想知道是否存在一个下标序列 $i_{1\sim k}\ (k≥1)$,满足 $1\leq i_i<i_2<⋯<i_k≤n$,且 $a_{i_1}\&a_{i_2}\&⋯\& a_{i_k}=m$。

Input

第一行一个整数 $T$ 表示数据组数。对于每组数据:
第一行两个整数 $n,m$。
第二行 $n$ 个非负整数 $a_1 \sim a_n$。

Output

对于每组数据,如果存在这样的非空子序列,输出一行 Yes,否则输出一行 No

Constraints

对于 $30\%$ 的数据,$1 \leq \sum n \leq 20,\ 0 \leq a_i,m<32$。
对于 $60\%$ 的数据,$1 \leq \sum n \leq 10^3,\ 0 \leq a_i,m<2^{10}$。
对于 $100\%$ 的数据,$1\leq T \leq 10^5,\ 1 \leq \sum n \leq 5\times 10^5,\ 0 \leq a_i,m<2^{30}$。

Sample 1 Input

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

Sample 1 Output

No
No
No
Yes
在第四组数据中,整个序列即为所求子序列。

Source/Category