atcoder#ARC116D. [ARC116D] I Wanna Win The Game

[ARC116D] I Wanna Win The Game

题目描述

整数 N N , M M が与えられます。 長さ N N の整数列 A A であって、以下の条件を満たすものの数を答えてください。

  • $ 0\ \leq\ A_i\ \left(i\ =\ 1,\ 2,\ \ldots,\ N\right) $
  • i = 1N Ai = M \sum_{i\ =\ 1}^{N}\ A_i\ =\ M
  • A1 A_1 xor A2 A_2 xor \cdots xor AN = 0 A_N\ =\ 0 (ここで xor はビットごとの排他的論理和を表す)

ただし、答えは非常に大きくなる場合があるので、 998244353 998244353 で割った余りを答えてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N M M

输出格式

答えを出力せよ。

题目大意

给定 n,mn,m,问有多少个长度为 nn 的序列 aa 满足:

  1. 0ai0\leq a_i
  2. i=1nai=m\sum_{i=1}^n a_i=m
  3. a1a2a3=0a_1\bigoplus a_2\bigoplus a_3\cdots =0
  • 1n,m50001\le n,m\le 5000
5 20
475
10 5
0
3141 2718
371899128

提示

制約

  • 入力は全て整数
  • 1  N  5000 1\ \leq\ N\ \leq\ 5000
  • 1  M  5000 1\ \leq\ M\ \leq\ 5000

Sample Explanation 1

条件を満たす数列 A A として、例えば以下のようなものが考えられます。 - A = (10, 0, 10, 0, 0) A\ =\ \left(10,\ 0,\ 10,\ 0,\ 0\right) - A = (1, 2, 3, 7, 7) A\ =\ \left(1,\ 2,\ 3,\ 7,\ 7\right)