Home => ProblemSet => 2.12-119:[SDOI2011] 黑白棋
Problem2120--2.12-119:[SDOI2011] 黑白棋

2120: 2.12-119:[SDOI2011] 黑白棋

Time Limit: 1 Sec  Memory Limit: 128 MB  Submit: 0  Solved: 1
[ Submit ] [ Status ] [ Creator: ][ 参考程序 ]

Description

小 A 和小 B 又想到了一个新的游戏。
这个游戏是在一个 1×n 的棋盘上进行的,棋盘上有 k 个棋子,一半是黑色,一半是白色。
最左边是白色棋子,最右边是黑色棋子,相邻的棋子颜色不同。

小 A 可以移动白色棋子,小 B 可以移动黑色的棋子,其中白色不能往左,黑色不能往右。他们每次操作可以移动 1 到 d 个棋子。
每当移动某一个棋子时,这个棋子不能跨越两边的棋子,当然也不可以出界。当谁不可以操作时,谁就失败了。
小 A 和小 B 轮流操作,现在小 A 先移动,有多少种初始棋子的布局会使他胜利呢?

Input

输入三个数 n,k,d。

Output

输出小 A 胜利的方案总数。答案对 109+7 取模。

Sample Input Copy

10 4 2

Sample Output Copy

182

HINT

  • 对于 30% 的数据,有 k=2。
  • 对于 100% 的数据,有 1≤d≤k≤n≤104,k 为偶数,k≤100。

Source/Category