leetcode: 63. Unique Paths II
来源:互联网 发布:mac pdf转word网页版 编辑:程序博客网 时间:2024/06/06 10:43
Q
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.
AC
class Solution(object): def uniquePathsWithObstacles(self, obstacleGrid): """ :type obstacleGrid: List[List[int]] :rtype: int """ m, n = len(obstacleGrid), len(obstacleGrid[0]) ways = [0]*n ways[0] = 1 for i in xrange(m): if obstacleGrid[i][0] == 1: ways[0] = 0 for j in xrange(n): if obstacleGrid[i][j] == 1: ways[j] = 0 elif j>0: ways[j] += ways[j-1] return ways[-1]# Time: O(m * n)# Space: O(m + n)class Solution2(object): def uniquePathsWithObstacles(self, obstacleGrid): """ :type obstacleGrid: List[List[int]] :rtype: int """ m, n = len(obstacleGrid), len(obstacleGrid[0]) ways = [0]*n ways[0] = 1 for i in xrange(m): if obstacleGrid[i][0] == 1: ways[0] = 0 for j in xrange(n): if obstacleGrid[i][j] == 1: ways[j] = 0 elif j>0: ways[j] += ways[j-1] return ways[-1]if __name__ == "__main__": obstacleGrid = [ [0,0,0], [0,1,0], [0,0,0] ] assert Solution().uniquePathsWithObstacles(obstacleGrid) == 2
阅读全文
0 0
- LeetCode --- 63. Unique Paths II
- LeetCode 63.Unique Paths II
- [leetcode] 63.Unique Paths II
- [leetcode] 63.Unique Paths II
- Leetcode 63. Unique Paths II
- LeetCode 63. Unique Paths II
- [leetcode] 63. Unique Paths II
- leetcode 63. Unique Paths II
- 63. Unique Paths II LeetCode
- LeetCode 63. Unique Paths II
- [LeetCode]63. Unique Paths II
- leetcode 63. Unique Paths II
- LeetCode *** 63. Unique Paths II
- leetcode 63. Unique Paths II
- Leetcode:63. Unique Paths II
- LeetCode 63. Unique Paths II
- leetcode 63.Unique Paths II
- LeetCode 63. Unique Paths II
- ADO 数据库编程
- Java核心技术-反射
- Java时间处理类SimpleDateFormat的parse和format
- leetcode: 62. Unique Paths
- window7下部署zookeeper、启动dubbo-admin
- leetcode: 63. Unique Paths II
- Shiro (五) Base64和Md5加密
- 201509-2 日期计算 ccf
- leetcode: 64. Minimum Path Sum
- Linux tree命令
- Aizu ALDS1_7_A Rooted Trees
- 如何解决未经处理的win32异常
- java.sql.SQLException: Value'0000-00-00'异常解决办法[转]
- 安装kali后必做工作