3.判断是石头还是空地
上述棋盘有个很强的约束条件,就是棋盘的约束问题,粉红色假设为石头,没有粉红色为空地,那我们就是要找到空地,从空地进行行走,下面来编写这样的函数。...棋盘假设为grid的二维数组,共有m行,n列。生成的二维数组中1表示石头,0表示空位。...我们知道当第一行或者第一列中有石头的时候,随之后面的行或者列就走不通了,那么直接设为0即可。
所以第一步先堆特殊的第一行与第一列进行处理。
然后堆中间行与列处理。...def countPath2(grid,m,n,dp):
# 处理每一行
for i in range(m):
if not validSquare(grid,i,0):...下面为从右下角到左上角的动态规划代码:
def countPath1(grid,m,n,dp):
# 处理每一行
for i in range(m-1,-1,-1):
if