L - Range NEQ Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 400

問題文

正整数 N,M が与えられます。

(0,1,...,NM-1) の順列 P=(P_{0},P_{1},...,P_{NM-1}) のうち、以下の条件を満たすものの個数を 998244353 で割ったあまりを求めてください。

  • 0\le i\lt NM を満たす全ての整数 i について、 \left\lfloor \frac{i}{M} \right\rfloor \neq \left\lfloor \frac{P_{i}}{M}\right\rfloor が成り立つ。

ただし、 \left\lfloor X \right\rfloorX 以下の最大の整数を表します。

制約

  • 入力はすべて整数
  • 2\le N \le 1000
  • 1\le M \le 1000

入力

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

N M

出力

答えを出力せよ。


入力例 1

2 2

出力例 1

4

条件を満たす順列は P=(2,3,0,1),(2,3,1,0),(3,2,0,1),(3,2,1,0)4 種類です。

例えば、 P=(3,0,1,2)i=3 のとき、\left\lfloor \frac{3}{2} \right\rfloor = \left\lfloor \frac{2}{2}\right\rfloor=1 となるため、条件を満たしません。


入力例 2

5 1

出力例 2

44

M=1 のときは条件の式は i\neq P_{i} と同値になります。


入力例 3

167 91

出力例 3

284830080