首页 > 其他 > 详细

剑指Offer——变态跳台阶

时间:2017-10-27 15:12:30      阅读:195      评论:0      收藏:0      [点我收藏+]

题目描述:

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


分析:

这一题其实没有那么难。思路和上一题一样(剑指Offer——跳台阶)。

可得f[n]=f[n-1]+f[n-2]+f[n-3]+...+f[1]+f[0]。

这个公式是不是很漂亮,

那么f[0]=1,f[1]=1,

是不是

f[2]=1+1=2^0+1=2^1;

f[3]=2^1+2^0+1=2^2;

...;

f[n]=2^(n-1);


代码:

1 class Solution {
2 public:
3     int jumpFloorII(int number) {
4         return 1 << (number - 1);
5     }
6 };

 

剑指Offer——变态跳台阶

原文:http://www.cnblogs.com/yjcheng1314/p/7742921.html

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