CF691E Xor-sequences
题目描述
给你 $n,k$,和一个 $n$ 个数的序列 $\{a_i\}_{i=1}^n$。一个序列 $\{x_i\}_{i=1}^k$ 被称作“异或序列”,当且仅当以下两个条件全部满足:
- $\forall i\in[1,k]:x_i\in[1,n]\cap\Z$;
- $\forall i\in[1,k):3\mid\mathrm{popcount}(a_{x_i}\mathbin{\mathrm{xor}} a_{x_{i+1}})$。
求有多少个异或序列,模 $10^9+7$。
**如果 $n=2,k=1,a=[1,1]$,那么答案为 $\red 2$,两个异或序列分别为 $[1],[2]$。**
输入格式
第一行两个整数 $n,k(1\le n\le 100,1\le k\le 10^{18})$。
第二行 $n$ 个整数 $a_1,a_2,\cdots,a_n(1\le a_i\le 10^{18})$。
输出格式
一个整数,表示异或序列的数量模 $10^9+7$。
说明/提示
原题表述不够严谨,因此翻译对“异或序列”的定义进行了改动,不影响作答。