#P1163. 完美共鸣

完美共鸣

题目描述

在符文体系中,每个正整数对应一种符文。两张符文进行异或(⊕\oplus)运算,若结果在二进制表示中恰好只有一个 11(即结果为 22 的幂:1,2,4,8,…1,2,4,8,\dots),则称为一次完美共鸣。

给定 nn 张符文上的数值 a1,a2,…,ana_1, a_2, \dots, a_n,计算从中任选两张符文进行异或,能产生完美共鸣的总次数。

输入格式

第一行一个整数 nn,表示符文的数量。

第二行 nn 个整数 a1,a2,…,ana_1, a_2, \dots, a_n,表示每张符文的数值。

输出格式

一行一个整数,表示完美共鸣的发生次数。

样例

4
4 6 7 2
3
5
1 2 3 4 5
4

样例解释

  • 样例 1:4⊕6=24 \oplus 6 = 2,6⊕7=16 \oplus 7 = 1,6⊕2=46 \oplus 2 = 4,共 33 次。
  • 样例 2:2⊕3=12 \oplus 3 = 1,4⊕5=14 \oplus 5 = 1,1⊕3=21 \oplus 3 = 2,1⊕5=41 \oplus 5 = 4,共 44 次。

数据范围

对于 100%100\% 的数据,2≤n≤2×1052 \le n \le 2 \times 10^5,0≤ai≤2200 \le a_i \le 2^{20}。

  • 测试点 1∼61\sim6(3030 分):n≤2000n \le 2000
  • 测试点 7∼127\sim12(3030 分):ai≤210a_i \le 2^{10}
  • 测试点 13∼2013\sim20(4040 分):无特殊限制