loj#P6878. 生不逢时

生不逢时

题目描述

给定正整数 n,mn, mnn 个区间,第 ii 个区间为 [li,ri][l _ i, r _ i],保证 0liri<2m0 \leq l_i \leq r_i < 2^m

对于非负整数 xx,记 Sm(x)S _ m(x) 表示 xx 在二进制下最低的 mm 位依次连接成的 01 串,如果不足 mm 位则在高位补 00

对于 k=1,2,,nk = 1, 2, \cdots ,n,求有多少非负整数序列 a1,a2,,aka _ 1, a _ 2, \cdots, a _ k 满足下列条件。

  • 对于所有 1ik1 \leq i \leq kliairil _ i \leq a _ i \leq r _ i
  • $S _ m(a _ 1 \oplus a _ 2 \oplus \cdots \oplus a _ k)$ 是回文串,其中 \oplus 表示按位异或运算。

答案对 998244353998244353 取模。

输入格式

输入共 n+1n + 1 行。

第一行包含两个正整数 n,mn, m

接下来 nn 行,每行两个非负整数 li,ril _ i, r _ i,表示第 ii 号区间是 [li,ri][l _ i, r _ i]

输出格式

nn 行,第 ii 行有一个非负整数,表示当 k=ik = i 时的答案。

4 2
1 3
2 3
0 0
1 2
1
3
3
6
5 3
0 2
2 7
2 6
1 2
4 5
2
9 
45
90
180

数据范围与提示

对于所有数据,满足 $1 \le n \le 40, 1 \le m \le 60, 0 \le l _ i \le r _ i < 2 ^ m$。

2525 个测试点,每个测试点 44 分,具体测试点范围见下表。

测试点编号 1n1 \le n \le 1m1 \le m \le 特殊性质
11 33
22 99
33 1212
454 \sim 5 1818
686 \sim 8 4040 1616
99 3030
1010 6060 li=0l _ i = 0
1111 11
121312 \sim 13 44
141614 \sim 16 88
171817 \sim 18 1818
192019 \sim 20 3030
2121 3434
2222 3636
2323 3838
242524 \sim 25 4040