#P0406. 区间异或和计数

区间异或和计数

题目描述

小C现在拿到了一个长度为 nn 的数组以及一个整数 kk,他现在想知道,存在多少个区间,满足区间内所有的数异或运算之后值为 kk

更形式化的说,就是找满足区间 [l,r][l,r]alal+1...ar=ka_l \oplus a_l+1 \oplus ... \oplus a_r = k 的区间数量。

输入格式

第一行输入两个整数 nnkk,分别表示数组大小以及对应的值 kk

接下来一行 nn 个以空格隔开的数字。

输出格式

输出一个整数:满足条件的区间数量。

样例

4 1
1 1 1 1
6

提示

满足条件的区间有 [1,1],[1,3],[2,2],[2,4],[3,3],[4,4][1,1],[1,3],[2,2],[2,4],[3,3],[4,4]

数据范围

30%30\% 的数据,0n,k,ai1000\le n,k,a_i \le100

60%60\% 的数据,0n,k,ai50000 \le n,k,a_i \le 5000

100%100\% 的数据, 0n,k,ai1060 \le n,k,a_i \le 10^6