变态跳台阶

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
解:这题一看就是要用个数学方法,没想出来。看了答案后发现有个极简单方法
每个台阶都有跳与不跳两种情况(除了最后一个台阶),最后一个台阶必须跳。所以共用2^(n-1)中情况
而且用位移更简单
class Solution {
public:
    int jumpFloorII(int number) {
        int i=1;
        return i<<(number-1);
    }
};

 

 
posted @ 2020-05-11 19:50  大老虎打老虎  阅读(114)  评论(0编辑  收藏  举报