AT_pakencamp_2023_day3_e MEX

Description

$ 0 $ 以上 $ M $ 以下の整数からなる数列 $ A=(A_1,A_2,\ldots,A_N) $ であって、次の条件を満たすものの数を、 $ 998244353 $ で割った余りを求めてください。 - $ B_i=\operatorname{mex}(\lbrace A_i,A_{i+1},\ldots,A_{i+K-1}\rbrace) $ として数列 $ B=(B_1,B_2,\ldots,B_{N-K+1}) $ を作ったとき、 $ B $ は狭義単調増加である。つまり、 $ B_1\lt B_2\lt\cdots\lt B_{N-K+1} $ を満たす。 mex の定義 非負整数の有限集合 $ S $ に対し、 $ \operatorname{mex}(S) $ を $ x\not\in S $ である非負整数 $ x $ の最小値として定めます。

Input Format

入力は以下の形式で標準入力から与えられます。 > $ N $ $ M $ $ K $

Output Format

条件を満たす $ A $ の数を $ 998244353 $ で割った余りを一行に出力してください。

Explanation/Hint

### Sample Explanation 1 $ (0,0,1) $ と $ (1,1,0) $ の $ 2 $ つが条件を満たします。 ### Constraints - $ 1\leq N\leq 2\times 10^5 $ - $ 1\leq M\leq 2\times 10^5 $ - $ 1\leq K\leq N $