编程题
黑白棋
### 题目描述
小 A 和小 B 又想到了一个新的游戏。
这个游戏是在一个 $1 \times n$ 的棋盘上进行的,棋盘上有 $k$ 个棋子,一半是黑色,一半是白色。
最左边是白色棋子,最右边是黑色棋子,相邻的棋子颜色不同。
小 A 可以移动白色棋子,小 B 可以移动黑色的棋子,其中白色不能往左,黑色不能往右。他们每次操作可以移动 $1$ 到 $d$ 个棋子。
每当移动某一个棋子时,这个棋子不能跨越两边的棋子,当然也不可以出界。当谁不可以操作时,谁就失败了。
小 A 和小 B 轮流操作,现在小 A 先移动,有多少种初始棋子的布局会使他胜利呢?
### 输入描述
输入三个数 $n,k,d$。
其中,有 $1 \leq d \leq k \leq n \leq 10^4$,$k$ 为偶数,$k \leq 100$。
### 输出描述
输出小 A 胜利的方案总数。答案对 $10^9+7$ 取模。
### 输入输出样例
#### 示例 1
>输入
```txt
10 4 2
```
>输出
```txt
182
```