zoukankan      html  css  js  c++  java
  • 62. Unique Paths

    description:

    https://leetcode.com/problems/unique-paths/
    机器人从一堆方格的左上角走到右下角,只能往右或者往下走 ,问有几种走法
    Note:

    Example:

    Example 1:
    
    Input: m = 3, n = 2
    Output: 3
    Explanation:
    From the top-left corner, there are a total of 3 ways to reach the bottom-right corner:
    1. Right -> Right -> Down
    2. Right -> Down -> Right
    3. Down -> Right -> Right
    
    Example 2:
    
    Input: m = 7, n = 3
    Output: 28
    

    answer:

    class Solution {
    public:
        int uniquePaths(int m, int n) {
            double sum = 1, up = 1;  // 这里一定是 double 
            int mi = m < n ? m : n;  // 必须先找出最小的,虽然数学上两个排列相等,但是程序里因为数的范围限制神马的不清楚,会超时
            for (int i = 0; i < mi - 1; i++) {
                sum *= m + n - 2 - i;
                up *= i + 1;
            }
            return (int)(sum / up); // 最后要把double 变到 integer
        }
    };
    
    

    relative point get√:

    hint :

    就是在总步数 m + n - 2 里选 n-1 步 (m - 1)是往下走(右)

  • 相关阅读:
    [luogu]P1852跳跳棋
    StdDraw绘图
    Java-Timer-Stop
    人之初
    单例模式--延时初始化
    ubuntu忘记密码
    QT5 TK1 串口通信
    金秋十月
    级联分类器训练-----OpenCV
    Hu矩SVM训练及检测-----OpenCV
  • 原文地址:https://www.cnblogs.com/forPrometheus-jun/p/11332791.html
Copyright © 2011-2022 走看看