题库练习 Wall Bars
← 上一题 下一题 →

A8771 | Wall Bars

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

题目描述

Manao is working for a construction company. Recently, an order came to build wall bars in a children's park. Manao was commissioned to develop a plan of construction, which will enable the company to save the most money.

After reviewing the formal specifications for the wall bars, Manao discovered a number of controversial requirements and decided to treat them to the company's advantage. His resulting design can be described as follows:

- Let's introduce some unit of length. The construction center is a pole of height $n$ .
- At heights $1,2,...,n$ exactly one horizontal bar sticks out from the pole. Each bar sticks in one of four pre-fixed directions.
- A child can move from one bar to another if the distance between them does not exceed $h$ and they stick in the same direction. If a child is on the ground, he can climb onto any of the bars at height between $1$ and $h$ . In Manao's construction a child should be able to reach at least one of the bars at heights $n-h+1,n-h+2,...,n$ if he begins at the ground.

![](/uploads/acgo/image/20b5aa30427781f9_58199d009775.jpeg)The figure to the left shows what a common set of wall bars looks like. The figure to the right shows Manao's constructionManao is wondering how many distinct construction designs that satisfy his requirements exist. As this number can be rather large, print the remainder after dividing it by $1000000009 (10^{9}+9)$ . Two designs are considered distinct if there is such height $i$ , that the bars on the height $i$ in these designs don't stick out in the same direction.

输入格式

A single line contains two space-separated integers, $n$ and $h$ ( $1<=n<=1000$ , $1<=h<=min(n,30)$ ).

输出格式

In a single line print the remainder after dividing the number of designs by $1000000009 (10^{9}+9)$ .

输入输出样例

输入 #1
5 1
输出 #1
4
输入 #2
4 2
输出 #2
148
输入 #3
4 3
输出 #3
256
输入 #4
5 2
输出 #4
376
C++ 编辑器
输入
输出