解题思路
本题要求统计长度为 n、每个元素均为小于 2m 的非负整数的稳定序列个数。稳定条件为整体对称差 X=a1⊕a2⊕⋯⊕an 小于等于整体交 Y=a1⊙a2⊙⋯⊙an,其中 ⊕ 为按位异或,⊙ 为按位与。结果对 109+7 取模。
由于每个数都可以看作 m 位的二进制数,我们可以从高到低逐位分析每一位的赋值情况,并考虑 X≤Y 的约束。
记号和每位情况
对于第 b 位(b=m−1,…,0),设序列中所有数在该位的取值为 x1,x2,…,xn∈{0,1}。
- 整体交在该位的值 Yb=1 当且仅当所有 xi=1(即该位全为 1);否则 Yb=0。