zoukankan      html  css  js  c++  java
  • 【算法编程】变态跳台阶

    题目描述

    一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
     
    解题思路:
    思路一:最后跳一步的跳法有f(n-1)种,最后跳两步的跳法有f(n-2)种,……,最后跳n-1步的跳法有f(1)种。f(1)=1。f(n)=1+f(n-1)+f(n-2)+……+f(1) = 2^(n-1)。
    思路二:隔板问题,n个格子有n-1个插隔板的位置,可以选择不插或插1到n-1个隔板。f(n)=C(n-1,0)+C(n-1,1)+……+C(n-1,n-1) = 2^(n-1)。
     
    代码:return pow(2,n-1)
     
    注意:加快运算,可采用向左移位的方法,即 return 1<<(n-1)
  • 相关阅读:
    React简介
    webpack处理项目中的资源文件
    ajax
    DOW
    webpack-css单独打包配置
    SSH配置
    html-webpack
    常用ui
    git命令备忘
    关于git的一些使用
  • 原文地址:https://www.cnblogs.com/xiangfeidemengzhu/p/9504625.html
Copyright © 2011-2022 走看看