编程题
### 问题描述
小辉喜欢玩“我的世界”这款游戏,里面的草方块有一些特性:
- 草方块需要一个个往上搭。
- 拆除下方的草方块后,上方的草方块不会下落。
小辉现在总共有 $n$ 个草方块,首先他从地面把这 $n$ 个草方块一个个的往上搭,他每次可以从这些草方块中拆除 $k$ 个方块,然后从剩余最高的草方块开始继续往上搭,小辉想知道操作 $m$ 次后,最高的草方块的期望高度是多少?地面高度为 $0$ 。
### 输入格式
一行三个整数 $n,m,k$ 。
### 输出格式
输出一个整数表示最高方块的期望高度。令 $M=998244353$ ,可以证明所求期望可以写成既约分数 $\dfrac{p}{q}$ 的形式,其中 $p,q$ 均为整数且 $q\not\equiv 0 (mod \ M)$。输出的整数应当是 $p·q^{-1}(mod\ M)$ 。
### 样例一输入
```text
3 1 2
```
### 样例一输出
```text
4
```
### 样例二输入
```text
3 3 3
```
### 样例二输出
```text
3
```
### 说明
样例一中,只进行一轮游戏,这轮游戏结束时:
有 $\frac{1}{3}$ 的概率选择高度为 $1$ 和 $2$ 的方块,并将其依次放在高度为 $3$ 的方块上,最高的方块高度为 $5$ 。
有 $\frac{1}{3}$ 的概率选择高度为 $1$ 和 $3$ 的方块,并将其依次放在高度为 $2$ 的方块上,最高的方块高度为 $4$ 。
有 $\frac{1}{3}$ 的概率选择高度为 $2$ 和 $3$ 的方块,并将其依次放在高度为 $1$ 的方块上,最高的方块高度为 $3$ 。
最高的方块的高度期望为 $\frac{1}{3}\times (5+4+3)=4$ 。
样例二数据中,每轮游戏都会拿走全部的方块再放回,因此最高的方块高度不会改变。
### 评测数据规模
对于 $100$% 的评测数据, $1\leq n \leq 10^6,1\leq m\leq10^9,1\leq k\leq n$ 。