题目:
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?
这是一道数学题,也可以用dp来做,但是理解为数学题更容易做,可以看成一道排列组合题目
机器人一定会走m-1次右边和n-1次下边,答案则为C(m+n-2) 上面为m-1
代码如下:
class Solution:
# @return an integer
def uniquePaths(self, m, n):
s = min(m,n) - 1
mn = m + n - 2;
k = 1
for i in range(s) :
k *= mn-i;
for i in range(s) :
k /= i+1;
return k