zoukankan      html  css  js  c++  java
  • 青蛙变态跳台阶解法

    问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

      这个问题可以想到递归来解决,因为以前遇到过类似的爬楼梯问题,也相当于斐波那契数列。

      跳台阶,可以跳1级,也可以跳2级,求n级台阶跳法。

       第一步有两种跳法:

      跳1级,剩下跳法为f(n-1);

      跳2级,剩下跳法为f(n-2);

      当为n时,f(n)=f(n-1)+f(n-2);

      但此题可以跳上n级台阶:

      第一步有n种跳法:跳1级、跳2级、到跳n级

      跳1级,剩下n-1级,则剩下跳法是f(n-1)

      跳2级,剩下n-2级,则剩下跳法是f(n-2)

      跳3级,剩下n-3级,则剩下跳法是f(n-3)

      ......

      推理得到:

      f(n)=f(n-1)+f(n-2)+...+f(1)

      f(n-1)=f(n-2)+f(n-3)+...+f(1)

      则f(n)=2*f(n-1)

     

      

      

    没事就来写写博客哈哈哈!
  • 相关阅读:
    js日期 操作
    c# 调用c++ dll
    多维数组与交错数组的转换
    c++多态
    c++ 指向类成员函数的函数指针
    c++虚析构函数的使用及其注意点
    c++模板实现 linq
    Php 常用类
    Php ORM 对象关系映射
    Php OpenID
  • 原文地址:https://www.cnblogs.com/cppeterpan/p/6703948.html
Copyright © 2011-2022 走看看