zoukankan      html  css  js  c++  java
  • 3:爬楼梯

    描述:假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部?

    样例

    比如n=31+1+1=1+2=2+1=3,共有3中不同的方法

    返回 3

    class Solution {

    public:

    /**

    * @param n: An integer

    * @return: An integer

    */

    long climbStairs(int n) {

        // write your code here

        if(n==0)

            return 1;

        long  s = 1;

        int i=1;

        int j=n-i;

        while(i<=j){

            s=s+(getCni(j,i)+0.1);

            i++;

            j=n-i;

        }

        return s;

    }

    long  getCni( long n,  long i){

        long  s = 1;

        for (int j = 0; j<i; j++ ){

            s = s*( n - j )/(j+1);

        }

        return s ;

        }

    };

  • 相关阅读:
    LeetCode 43. 字符串相乘(Multiply Strings)
    LeetCode 541. 反转字符串 II(Reverse String II)
    枚举类型
    c#字母加密
    汇率兑换Python
    冒泡排序c#
    c#
    HTML
    日历
    Java2
  • 原文地址:https://www.cnblogs.com/kyoxy/p/6522902.html
Copyright © 2011-2022 走看看