63. Unique Paths II
2016-05-19 19:26
453 查看
Follow up for “Unique Paths”:
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.
For example,
There is one obstacle in the middle of a 3x3 grid as illustrated below.
[
[0,0,0],
[0,1,0],
[0,0,0]
]
The total number of unique paths is 2.
Note: m and n will be at most 100.
相比62. Unique Paths 就是增加了障碍物,递归公式为:
if(obstacleGrid[i][j]==1)
dp[i][j]=0;
else
dp[i][j]=dp[i][j-1]+dp[i-1][j];
但是要注意下边界条件的处理。
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.
For example,
There is one obstacle in the middle of a 3x3 grid as illustrated below.
[
[0,0,0],
[0,1,0],
[0,0,0]
]
The total number of unique paths is 2.
Note: m and n will be at most 100.
相比62. Unique Paths 就是增加了障碍物,递归公式为:
if(obstacleGrid[i][j]==1)
dp[i][j]=0;
else
dp[i][j]=dp[i][j-1]+dp[i-1][j];
但是要注意下边界条件的处理。
class Solution { public: int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid) { int m=obstacleGrid.size(); int n=obstacleGrid[0].size(); int **dp; dp = new int*[m]; for(int j=0;j<m;j++){ dp[j] = new int ; } dp[0][0] =obstacleGrid[0][0]==1?0:1; for(int i=1;i<m;i++) dp[i][0]=obstacleGrid[i][0]==1?0:dp[i-1][0]; for(int i=1;i<n;i++) dp[0][i]=obstacleGrid[0][i]==1?0:dp[0][i-1]; for(int i=1;i<m;i++){ for(int j=1;j<n;j++){ if(obstacleGrid[i][j]==1){ dp[i][j]=0; }else{ dp[i][j]=dp[i][j-1]+dp[i-1][j]; } } } return dp[m-1][n-1]; } };
相关文章推荐
- android开发不可不知的UI知识
- 【Arduino官方教程第一辑】示例程序 4-10 串口事件
- HDU 4667 Building Fence(求凸包的周长)
- 键盘样式(UIKeyboardType)
- Java问题总结33之利用UUID生成全局唯一码(Scala环境运行)
- 【Arduino官方教程第一辑】示例程序 4-9 串口双向调用(使用ASCII字符串)
- 加载图片显示时的图片变形问题(UIImageView)
- 你该知道的 TValue
- Uva1605——Building for UN
- Longest Increasing Subsequence
- OData入门:OData Java和SAP UI5的几个帖子
- 理解JPA注解@GeneratedValue
- Jsp注册界面——request对象
- ServletFileUpload.parseRequest()为空
- android:fillViewport="true"
- 创建型模式之Builder模式及实现
- java 生成22位UUID 改造
- autoinstall ISO build
- NanUI for Winform 使用示例【第一集】——山寨个代码编辑器
- Ui