一个N x N的网格(grid)
代表了一块樱桃地,每个格子由以下三种数字的一种来表示:
你的任务是在遵守下列规则的情况下,尽可能的摘到最多樱桃:
示例 1:
输入: grid = [[0, 1, -1], [1, 0, -1], [1, 1, 1]] 输出: 5 解释: 玩家从(0,0)点出发,经过了向下走,向下走,向右走,向右走,到达了点(2, 2)。 在这趟单程中,总共摘到了4颗樱桃,矩阵变成了[[0,1,-1],[0,0,-1],[0,0,0]]。 接着,这名玩家向左走,向上走,向上走,向左走,返回了起始点,又摘到了1颗樱桃。 在旅程中,总共摘到了5颗樱桃,这是可以摘到的最大值了。
说明:
grid
是一个 N
* N
的二维数组,N的取值范围是1 <= N <= 50
。grid[i][j]
都是集合 {-1, 0, 1}
其中的一个数。grid[0][0]
和终点 grid[N-1][N-1]
的值都不会是 -1。