#ATarc098b. A20*【双指针】[ABC098D] Xor Sum 2
A20*【双指针】[ABC098D] Xor Sum 2
AT_arc098_b [ABC098D] Xor Sum 2
题目描述
有一个长度为 的整数序列 。
请你求出满足以下条件的整数对 的个数():
- $A_l \operatorname{xor} A_{l+1} \operatorname{xor} \cdots \operatorname{xor} A_r = A_l + A_{l+1} + \cdots + A_r$
:::info[ 的定义]
对于整数 ,它们的 定义如下:
- 设 的值为 。将 用二进制表示时,对于每一个 位(, 为整数),如果 中在该位为 的数的个数为奇数,则 的该位为 ,否则为 。
例如, 和 的 值为 ,因为 的二进制为 , 的二进制为 ,所以 ,即 。
:::
输入格式
输入以如下格式从标准输入读入:
输出格式
输出满足条件的整数对 的个数。
样例 1
输入
4
2 5 4 6
输出
5
样例 2
输入
9
0 0 0 0 0 0 0 0 0
输出
45
样例 3
输入
19
885 8 1 128 83 32 256 206 639 16 4 128 689 32 8 64 885 969 1
输出
37
说明/提示
限制条件
- 输入均为整数
样例解释 1
显然, 都满足条件。此外,当 时,,所以也满足条件。没有其他满足条件的组合,因此答案为 。
相关
在下列比赛中: