标签:
62. Unique Paths
题目
分析:
机器人一共要走m+n-2步,现在举个例子类比,有一个m+n-2位的二进制数,现在要在其中的m位填0,其余各位填1,一共有C(m+n-2,m-1)种可能,如果0表示向下走,1表示向右走,这样就和题目意思一样了。
现在考虑最后一步的走法,要么向右走到达终点,要么向下走到达终点,因此
f(m,n) = f(m,n-1)+f(m-1,n);
代码如下(主要考虑的是大数据):
1 class Solution { 2 public: 3 int uniquePaths(int m, int n) { 4 vector<vector<int>> v(m, vector<int>(n, 1)); 5 for(int i=1; i<m; ++i){ 6 for(int j=1; j<n; ++j){ 7 v[i][j]=v[i-1][j]+v[i][j-1]; 8 } 9 } 10 return v[m-1][n-1]; 11 } 12 };
标签:
原文地址:http://www.cnblogs.com/LCCRNblog/p/5171216.html