题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
解:这题一看就是要用个数学方法,没想出来。看了答案后发现有个极简单方法
每个台阶都有跳与不跳两种情况(除了最后一个台阶),最后一个台阶必须跳。所以共用2^(n-1)中情况
而且用位移更简单
class Solution { public: int jumpFloorII(int number) { int i=1; return i<<(number-1); } };
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/17547.html