主要是一个递归函数:  func  go(pathLen, row, col,  lastNum int) int  每次进入的时候都找到上下左右中比 lastNum 大的最小的那个值,若不满足,则直接返回 pathLen。 假设存在,那么 temp  = matrix[row][col],传递给下一个函数,pathLen + 1,row 和 col 为我们之前确定的那个方向,同时把当前的  matrix[row][col] 置为零,一直走到不能走。 现在我们已经取到了 pathLen,需要运行一遍 check,也就是遍历检查一遍 matrix,如果发现有大于 1的,也就意味着没打完怪兽,否则就打完了。 总体不难,但是那个上下左右边界扣的烦,应该有更好的做法。
点赞 7

相关推荐

专心打鱼:互联网搬运工,贴子都要偷
点赞 评论 收藏
分享
牛客网
牛客企业服务