#P1005. Farmer Long
Farmer Long
题目描述
在一个 行 列的棋盘上,Farmer Long 站在右上角的格子中。开始时他面向着棋盘下方。FL 按照如下规则在棋盘上移动:
- FL 绝对不会再次踏上一个他曾经站过的格子,也不会走出边界,他认为这像 Farmer 一样愚蠢。
- FL每次可以在不违反规则 1 的条件下向着他的前进方向移动任意步,然后他可以右转。但他每次右转后必须至少要向前移动 格,即不允许连续进行 次右转。
- 开始时 FL 只能前进不能右转。
- FL 可以在任何他想停下的位置停下,结束移动,并开始 “生产面包”。
现在请你编写一个程序,计算在上面所说的规则下,FL “生产面包” 时,可能的走出的路径有多少种。
输入格式
输入文件包括若干行,每行包括两个正整数 和 ()。
一行 标志着输入数据的结束,这一行不用处理。
输出格式
输出文件包括若干行,每行输出一个数表示输入文件中对应行为 和 的棋盘上 FL 所能走出的路径数。因为这个数可能很大,所以最后只用输出这个数除以 的余数即可。
1 1
1 3
2 2
2 3
0 0
1
1
4
7
数据规模
对于 的数据,。 对于 的数据,。
每个输入文件最多有 行输入数据。