#p2831. 例题1.3.7 二元组统计

例题1.3.7 二元组统计

题目描述\huge\textbf{题目描述}

给定一个含有 nn 个数的序列 a1a_1,a2a_2...ana_n, 求满足以下性质的二元组(i,j)的数量

  • 1 1i<jn1\leqslant i < j \leqslant n

  • 2 ai&ajaixoraja_i\&a_j\geqslant a_i \quad xor \quad a_j

其中 &\& 表示与运算, ^\hat{} 表示异或运算。

(0011)2&(0101)2=(0001)2(0011)_2 \& (0101)_2 = (0001)_2

(0011)2xor(0101)2=(0110)2(0011)_2 \quad xor \quad (0101)_2 = (0110)_2

输入格式\huge\textbf{输入格式}

第一行一个整数 TT ,表示数据组数

之后一行 11 个整数 nn ,表示序列长度

接下来一行 nn 个整数, 表示 a1a_1,a2a_2...ana_n

输出格式\huge\textbf{输出格式}

对于每一次询问,输出一个整数表示答案

输入样例\huge\textbf{输入样例}


5

5

1 4 3 7 10

3

1 1 1

4

6 2 5 3

2

2 4

1

1

输出样例\huge\textbf{输出样例}


1

3

2

0

0

数据范围与约定\huge\textbf{数据范围与约定}

对于 30%30\% 的数据 1n1031\leqslant n\leqslant 10^3,1ai1091\leqslant a_i\leqslant 10^9

对于另外 30%30\% 的数据 1n1051\leqslant n\leqslant 10^5,1ai<2101\leqslant a_i <2^{10}

对于 100%100\% 的数据 1T51\leqslant T\leqslant 5,1n1051\leqslant n\leqslant 10^5,1ai1091\leqslant a_i\leqslant 10^9