首页 > 其他 > 详细

LeetCode--Unique Paths

时间:2015-01-12 16:41:22      阅读:246      评论:0      收藏:0      [点我收藏+]

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.

class Solution 
{
public:
    int uniquePaths(int m, int n) 
    {
        if(m==1 || n==1)
            return 1;
        long long up,down;
        if(m>n)
        {
            up = cal(m+n-2,m);
            down = cal(n-1,1);
        }
        else
        {
            up = cal(m+n-2,n);
            down = cal(m-1,1);
        }
         return up/down;
    }
    long long cal(int hi, int lo)
    {
        long long res = 1;
        while(lo<=hi)
        {
            res *= lo;
            lo++;
        }
        return res;
    }
};


LeetCode--Unique Paths

原文:http://blog.csdn.net/shaya118/article/details/42642567

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!