请计算n*m的棋盘格子(n为横向的格子数,m为竖向的格子数)沿着各自边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。
- 思路 要么往右走,要么往下走,到边界只有一种走法。
- 递归
- 代码如下
while True:
try:
m,n = map(int,input().split())
except:
break
def step(m,n):
if n == 0 or m == 0: # 到达边界时,只有一种走法
return 1
else:
return step(m-1,n) + step(m,n-1) # 要么下想,要么向右
print(step(m,n))