题号:NC279168
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
Panjy 在玩维多利亚 3,他在游戏里统一了世界,他觉得统一天下没有难度,于是想让你做一道题。
给定一个长度为

的序列

,你有一张大小为

的图

,

满足对于两个不同整数

,若

,则

之间存在一条边,反之不存在边。
求该图最大连通块的点数。其中

为按位与运算。
输入描述:
第一行一个整数
表示数据组数。
对于每组数据,第一行输入两个正整数
,分别表示序列长度及连边最小按位与值。
第二行输入
个正整数分别为
。
保证
。
输出描述:
对于每组数据,输出一个整数,表示最大连通块的大小。
示例1
输入
复制
2
5 1
5 21 1 8 10
5 4
5 3 7 10 15