You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题面翻译
给定 m,n,希望构造长度为 m 的数列 a 满足条件:
- 1≤a1<a2<…am≤n。
- 令 bi=⊕j=1i,那么 b 是单增的。
求方案个数。
题目描述
正整数 N, M が与えられます。
長さ N の正整数列 A=(A1, A2, …, AN) であって、以下の条件を満たすものの個数を 998244353 で割った余りを求めてください。
- 1 ≤ A1 < A2 < … < AN ≤ M
- Bi = A1 ⊕ A2 ⊕ … ⊕ Ai としたとき、 B1 < B2 < … < BN
ただしここで、 ⊕ はビット単位 XOR 演算を表します。
ビット単位 XOR 演算とは 非負整数 A, B のビット単位 XOR 、A ⊕ B は、以下のように定義されます。
- A ⊕ B を二進表記した際の 2k (k ≥ 0) の位の数は、A, B を二進表記した際の 2k の位の数のうち一方のみが 1 であれば 1、そうでなければ 0 である。
例えば、3 ⊕ 5 = 6 となります (二進表記すると: 011 ⊕ 101 = 110)。
一般に k 個の非負整数 p1, p2, p3, …, pk のビット単位 XOR は (… ((p1 ⊕ p2) ⊕ p3) ⊕ … ⊕ pk) と定義され、これは p1, p2, p3, …, pk の順番によらないことが証明できます。
输入格式
入力は以下の形式で標準入力から与えられます。
N M
输出格式
答えを出力してください。
样例 #1
样例输入 #1
2 4
样例输出 #1
5
样例 #2
样例输入 #2
4 4
样例输出 #2
0
样例 #3
样例输入 #3
10 123456789
样例输出 #3
205695670
提示
制約
- 1 ≤ N ≤ M < 260
- 入力される値はすべて整数
Sample Explanation 1
例えば (A1, A2)=(1, 3) とすると A1 < A2 であり、B1=A1=1, B2=A1⊕ A2=2 より B1 < B2 が成り立つので条件を満たします。 この他には (A1, A2)=(1, 2), (1, 4), (2, 4), (3, 4) が条件を満たします。