atcoder#AGC036C. [AGC036C] GP 2

[AGC036C] GP 2

题目描述

長さ N N の数列 x=(x0,x1,,xN1) x=(x_0,x_1,\cdots,x_{N-1}) があります。 最初、すべての i i (0  i  N1 0\ \leq\ i\ \leq\ N-1 ) について xi=0 x_i=0 です。

すぬけさんは、次の操作をちょうど M M 回行います。

  • 相異なる添字 i,j i,j (0  i,j  N1, i  j 0\ \leq\ i,j\ \leq\ N-1,\ i\ \neq\ j ) を選ぶ。 そして、xi x_i xi+2 x_i+2 で置き換える。また、xj x_j xj+1 x_j+1 で置き換える。

最終的な数列 x x の状態としてありうるものが何通りあるかを求めてください。 ただし、答えは非常に大きくなることがあるので、998244353 998244353 で割ったあまりを求めてください。

输入格式

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

N N M M

输出格式

最終的な数列 x x の状態としてありうるものが何通りあるかを 998244353 998244353 で割ったあまりを出力せよ。

题目大意

有一个序列 a1na_{1 \cdots n},初始时均为 00。每一次操作中,可以选择 iji \ne j,将 aia_i 加上 11,将 aja_j 加上 22。操作共进行 mm 次,求最终序列有多少种可能的情况。答案对 998244353998244353 取模。

输入一行两个数 n,mn, m

输出一行,表示答案对 998244353998244353 取模的值。

n106,m5×105n \leq 10^6, m \leq 5 \times 10^5

2 2
3
3 2
19
10 10
211428932
100000 50000
3463133

提示

制約

  • 2  N  106 2\ \leq\ N\ \leq\ 10^6
  • 1  M  5 × 105 1\ \leq\ M\ \leq\ 5\ \times\ 10^5
  • 入力される値はすべて整数である。

Sample Explanation 1

2 2 回の操作後の x x の状態としてありうるものは以下の 3 3 通りです。 - x=(2,4) x=(2,4) - x=(3,3) x=(3,3) - x=(4,2) x=(4,2) たとえば、x=(3,3) x=(3,3) としたい場合、次のように操作すればよいです。 - 1 1 回目の操作:i=0,j=1 i=0,j=1 とする。x x (0,0) (0,0) から (2,1) (2,1) へ変化する。 - 2 2 回目の操作:i=1,j=0 i=1,j=0 とする。x x (2,1) (2,1) から (3,3) (3,3) へ変化する。