题库练习 k-Tree
← 上一题 下一题 →

A9557 | k-Tree

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Quite recently a creative student Lesha had a lecture on trees. After the lecture Lesha was inspired and came up with the tree of his own which he called a $k$ -tree.

A $k$ -tree is an infinite rooted tree where:

- each vertex has exactly $k$ children;
- each edge has some weight;
- if we look at the edges that goes from some vertex to its children (exactly $k$ edges), then their weights will equal $1,2,3,...,k$ .

The picture below shows a part of a 3-tree.

![](/uploads/acgo/image/90db0d23b52dfa53_df96ef2aa95d.jpeg)

As soon as Dima, a good friend of Lesha, found out about the tree, he immediately wondered: "How many paths of total weight $n$ (the sum of all weights of the edges in the path) are there, starting from the root of a $k$ -tree and also containing at least one edge of weight at least $d$ ?".Help Dima find an answer to his question. As the number of ways can be rather large, print it modulo $1000000007$ ( $10^{9}+7$ ).

输入格式

A single line contains three space-separated integers: $n$ , $k$ and $d$ ( $1<=n,k<=100;$ $1<=d<=k$ ).

输出格式

Print a single integer — the answer to the problem modulo $1000000007$ ( $10^{9}+7$ ).

输入输出样例

输入 #1
3 3 2
输出 #1
3
输入 #2
3 3 3
输出 #2
1
输入 #3
4 3 2
输出 #3
6
输入 #4
4 5 2
输出 #4
7
C++ 编辑器
输入
输出