241762 - 不同路径 II

题目描述

一个机器人位于一个 m × n 的网格左上角(1,1),每次只能向下或向右移动一步,目标是到达右下角(m,n)。网格中的某些格子是障碍物(用1表示),机器人不能进入障碍物格子。空位置用0表示。

请计算机器人从起点到终点共有多少条不同的路径(路径中不能经过任何障碍物)。答案保证小于等于2 × 10^9

输入

第一行包含两个整数mn,表示网格的行数和列数。 接下来m行,每行n个整数(01),表示网格中的障碍物分布。

输出

输出一个整数,表示从左上角到右下角的不同路径总数。若无法到达,输出0

样例

输入

3 3
0 0 0
0 1 0
0 0 0

输出

2

输入

2 2
0 1
0 0

输出

1
说明
样例1解释:

3x3 网格的正中间有一个障碍物。 从左上角到右下角一共有 2 条不同的路径:

  1. 向右 -> 向右 -> 向下 -> 向下
  2. 向下 -> 向下 -> 向右 -> 向右
数据范围

• 1 ≤ m, n ≤ 100。

• grid[i][j] 为 0 或 1。

• 答案 ≤ 2 × 10^9

来源

力扣

标签
题目参数
时间限制 1 秒
内存限制 256 MB
提交次数 7
通过人数 2
金币数量 3 枚
难度 入门


上一题 下一题