配点 : 500 点
問題文
長さ N の整数からなる数列 A=(A1,…,AN) であって、以下の条件を全て満たすものは何通りありますか?
- 1≤Ai≤M (1≤i≤N)
- ∣Ai−Ai+1∣≥K (1≤i≤N−1)
ただし、答えは非常に大きくなることがあるので、答えを 998244353 で割った余りを求めてください。
制約
- 2≤N≤1000
- 1≤M≤5000
- 0≤K≤M−1
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
N M K
出力
答えを 998244353 で割った余りを出力せよ。
2 3 1
6
条件を満たす数列は以下の 6 つです。
- (1,2)
- (1,3)
- (2,1)
- (2,3)
- (3,1)
- (3,2)
3 3 2
2
条件を満たす数列は以下の 2 つです。
- (1,3,1)
- (3,1,3)
100 1000 500
657064711
答えを 998244353 で割った余りを出力してください。