题解 | #走方格的方案数#
走方格的方案数
https://www.nowcoder.com/practice/e2a22f0305eb4f2f9846e7d644dba09b
while True:
try:
n,m = map(int,input().split())
#初始化dp表,dp表的值表示到该坐标点的方案数
dp = [[1 for i in range(n+1)] for i in range(m+1)]
#因为只能向下和向右,不能走回头路,所以第一列和第一行上坐标方案数就是1,可以直接跳过,可以从(1,1)坐标开始,需要到达(1,1)坐标的话,可以是(1,0)坐标向下,(0,1)坐标向右,那么达到(1,1)坐标的方案
#就是两者相加,其余坐标点的方案数也是如此来,可以得出dp公式:dp[i][j] = dp[i-1][j] +dp[i][j-1]
for i in range(1, m + 1):
for j in range(1, n + 1):
dp[i][j] = dp[i - 1][j] + dp[i][j - 1]
print(dp[m][n])
except:
break
查看29道真题和解析
