#P869. 【TYVJ1623】数字金字塔

【TYVJ1623】数字金字塔

【问题描述】

假设有N个数写成一行,这行上面一行有N-1个数,第i数是第一行第i个数和第i+1个数的和。依次类推,最上面一行为第N行,有一个数。例如,4个数2,1,2,4形成如下结构:

    15
   6  9
 3  3  6
2  1  2  4

我们称这种结构为NumberPyramid。两个NumberPyramid相同当且仅当对应位置上的数相同。

给出两个整数baseLength和top。计算出有多少个不同的仅包含正整数的NumberPyramid,使得NumberPyramid的最高的数为top,第一行有baseLength个数。由于答案可能过大,只需要输出模1,000,000,009的余数即可。

【文件输入】

第一行两个整数baseLength,top。

【文件输出】

一个整数,题目所求答案。

【样例输入1】

3 5

【样例输出1】

2

【样例输入2】

5 16

【样例输出2】

1

【数据范围】

对于30%的数据,top<=20,baseLength<=5。

对于100%的数据,2<=baseLength<=1,000,000,1<=top<=1,000,000。