可以分解细化该问题,通过三个数组,分别记录,左右和向前的方法数,分析如下: 下一步向上走的递推式:up[i]=up[i-1]+left[i-1]+right[i-1];(上一步无论向左、向右、向上 下一步都可以向上走) 下一步向左走的递推式:left[i]=left[i-1]+up[i-1];(上一步向左向上 下一步都可以向上走,但是上一步向右走,就不能再向左走了,因为不能走再走过的格子) 下一步向右走的递推式:right[i]=right[i-1]+up[i-1];(同理,上一步不能是向左走的)
共 1 条回复
What's?!