赞
踩
题目链接:62.不同路径
文档链接:62.不同路径
视频链接:动态规划中如何初始化很重要!| LeetCode:62.不同路径
class Solution { public: int uniquePaths(int m, int n) { vector<vector<int>> dp(m,vector<int>(n,0)); for(int i = 0; i < m;i++){ dp[i][0] = 1; } for(int j = 0; j < n; j++){ dp[0][j] = 1; } for(int i = 1; i < m; i++){ for(int j = 1; j < n; j++){ dp[i][j] = dp[i-1][j] + dp[i][j-1]; } } return dp[m-1][n-1]; } };
题目链接:63. 不同路径 II
文档链接:63. 不同路径 II
视频链接:动态规划,这次遇到障碍了| LeetCode:63. 不同路径 II
class Solution { public: int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid) { int m = obstacleGrid.size(); int n = obstacleGrid[0].size(); if(obstacleGrid[0][0] == 1 || obstacleGrid[m-1][n-1] == 1) return 0; vector<vector<int>> dp(m, vector<int>(n,0)); for(int i = 0; i<m && obstacleGrid[i][0] == 0; i++){ dp[i][0] = 1; } for(int j = 0; j<n && obstacleGrid[0][j] == 0; j++){ dp[0][j] = 1; } for(int i = 1; i<m; i++){ for(int j=1; j<n; j++){ if(obstacleGrid[i][j] == 1) continue; dp[i][j] = dp[i-1][j] + dp[i][j-1]; } } return dp[m-1][n-1]; } };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。