LeetCode刷题:62. Unique Paths
- Unique Paths 原题链接:https://leetcode.com/problems/unique-paths/description/
- Unique Paths II 原题链接:https://leetcode.com/problems/unique-paths-ii/description/
62. Unique Paths
A robot is located at the top-left corner of a m x n grid (marked ‘Start’ in the diagram below).
The robot can only move either down or right at any point in time. The robot is trying to reach the bottom-right corner of the grid (marked ‘Finish’ in the diagram below).
How many possible unique paths are there?
Above is a 3 x 7 grid. How many possible unique paths are there?
Note: m and n will be at most 100.
这个题目的意思是给定了一个M*N的格子,一个机器人从左上角需要移动到右下角。每次移动时只能向右或者向下移动。问机器人从标记为START的位置移动到标记为Finish的位置,一共有多少条可能不同的路径?
图例给出的是3*7的方法。
注意:M和N的最大值为100。
问题分析:
这个问题可以使用DP算法来求解。
如图所示:
建立一个DP数组 dp[i][j],数组元素的值代表从上一步移动到下一步的路径数量。
当 i=0,j=0时,即左上角的格子初始值为1。
从左上角向右移动,从 a r r a y [ 0 ] [ 0 ] array[0][0] array[0][0]移动到 a r r a y [ 0 ] [ 1 ] array[0][1] array[0][1],只有一种路径,所以 d p [ 0 ] [ 1 ] dp[0][1] dp[0]