zoukankan      html  css  js  c++  java
  • 63. Unique Paths II(js)

    63. Unique Paths II

    A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below).

    The robot can only move either down or right at any point in time. The robot is trying to reach the bottom-right corner of the grid (marked 'Finish' in the diagram below).

    Now consider if some obstacles are added to the grids. How many unique paths would there be?

    An obstacle and empty space is marked as 1 and 0 respectively in the grid.

    Note: m and n will be at most 100.

    Example 1:

    Input:
    [
      [0,0,0],
      [0,1,0],
      [0,0,0]
    ]
    Output: 2
    Explanation:
    There is one obstacle in the middle of the 3x3 grid above.
    There are two ways to reach the bottom-right corner:
    1. Right -> Right -> Down -> Down
    2. Down -> Down -> Right -> Right
    题意:在机器人的棋盘格中设置障碍物,问从左上至右下有几种走法
    代码如下:
    /**
     * @param {number[][]} obstacleGrid
     * @return {number}
     */
    var uniquePathsWithObstacles = function(obstacleGrid) {
        var w=obstacleGrid[0].length;
        var dp=[];
        dp[0]=1;
        for(var i=1;i<w;i++){
            dp[i]=null;
        }
        obstacleGrid.forEach(item=>{
            for(var i=0;i<w;i++){
                if(item[i]===1) dp[i]=0;
                else if(i>0) dp[i]+=dp[i-1];
            }
        })
        return dp[w-1]
    };
  • 相关阅读:
    JavasScript 实现二分法快排注意点
    JS的面向对象二(通过构造函数的方式)
    JS的面向对象一(通过构造函数的方式)
    leetcode.977_有序数组的平方
    leetcode_38.报数
    leetcode_20.c++有效的括号
    leetcode_21.c++合并两个有序列表
    leetcode_最长公共前缀
    T2_两数相加
    T1_两数之和
  • 原文地址:https://www.cnblogs.com/xingguozhiming/p/10493469.html
Copyright © 2011-2022 走看看