码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode 刷题记

时间:2016-12-04 11:45:49      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:vector   closed   tar   etc   思路   cat   play   bsp   acl   

1 63. Unique Paths II   带障碍物的路径计算

思路:dp[i][j] = 0 if grid[i][j] = 1 (障碍物)

        再按照无障碍物的逻辑进行计算

技术分享
int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid) {
        int rows = obstacleGrid.size();
        if (rows == 0) {
            return 0;
        }
        int cols = obstacleGrid[0].size();
        vector<vector<int>> ways(rows, vector<int> (cols, 1));
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < cols; j++) {
                if (obstacleGrid[i][j] == 1) {
                    ways[i][j] = 0;
                } else {
                    if (i == 0 && j == 0) {
                        ways[i][j] = 1;
                    } else if (i == 0) {
                        ways[i][j] =  ways[i][j - 1];
                    } else if (j == 0) {
                        ways[i][j] = ways[i - 1][j];
                    } else {
                        ways[i][j] = ways[i - 1][j] + ways[i][j - 1];
                    }
                }
            }
        }
        return ways[rows - 1][cols - 1];
    }
View Code

 

leetcode 刷题记

标签:vector   closed   tar   etc   思路   cat   play   bsp   acl   

原文地址:http://www.cnblogs.com/lrlthinking/p/6130343.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!