Unique Paths II
来源:互联网 发布:java面向对象总结 编辑:程序博客网 时间:2024/06/02 03:34
class Solution {public: int uniquePathsWithObstacles(vector<vector<int> > &obstacleGrid) { //modify the input directly,because 1 is used for representing obstacle,so we use negative number for count int m=obstacleGrid.size(); if(m==0) { return 0; } int n=obstacleGrid[0].size(); if(n==0) { return 0; } for(int i=0;i<n;++i) { if(obstacleGrid[0][i]==1) { break; } else { obstacleGrid[0][i]=-1; } } for(int j=0;j<m;++j) { if(obstacleGrid[j][0]==1) { break; } else { obstacleGrid[j][0]=-1; } } for(int a=1;a<m;++a) { for(int b=1;b<n;++b) { if(obstacleGrid[a][b]==1) { continue; } if(obstacleGrid[a][b-1]!=1) { obstacleGrid[a][b]+=obstacleGrid[a][b-1]; } if(obstacleGrid[a-1][b]!=1) { obstacleGrid[a][b]+=obstacleGrid[a-1][b]; } } } return obstacleGrid[m-1][n-1]==1?0:-obstacleGrid[m-1][n-1]; }};
和上一题Unique Paths几乎一样,只是多了要判断一下当前的坑是不是路障。此外初始化dp矩阵时要注意合理性。我是直接在输入的矩阵上进行填坑的,由于要避免和用来表示路障的1冲突,所以用负数来进行计数。
0 0
- Unique Paths & Unique Paths II
- Unique Paths &&Unique Paths II
- Unique Paths & Unique Paths II
- Unique Paths & Unique Paths II
- LeetCode: Unique Paths II
- [Leetcode] Unique Paths II
- LeetCode : Unique Paths II
- Unique Paths II
- [LeetCode] Unique Paths II
- unique paths II
- Unique Paths II
- [LeetCode]Unique Paths II
- Unique Paths II
- Unique Paths II
- Unique Paths II
- Unique Paths II
- [leetcode]Unique Paths II
- Unique Paths II
- HTTP 状态码
- Win8 配置局域网可以访问IIS网站
- XMLHttpRequest与ActiveXObject
- next_permutation的原理和使用
- 命名空间
- Unique Paths II
- 模仿去哪儿的磁贴效果
- 手机卫士学习11-MD5加密
- IAR编译代码空间定义
- Android笔记ContentObserve的使用
- 一个单链表中返回倒数第n个元素
- HTTP content-type
- 算法竞赛入门经典第二章习题解答
- Linux 内核编译