2的n-1次幂求解

变态跳台阶

http://www.nowcoder.com/questionTerminal/22243d016f6b47f2a6928b4313c85387

本题的思路:
台阶数 --> 跳跃次数
0 --> 1
1 --> 1
2 --> 2 = 2^1
3 --> 4 = 2^2
4 --> 8 = 2^3
...
n --> 2^(n-1)
分析可知n阶台阶的跳跃方法为2^(n-1),c++代码如下:
class Solution {
public:
int jumpFloorII(int number) {
if((0 == number) || (1 == number)) {
return 1;
}
int sum = 1;
for(int i=2; i<=number; i++) {
sum *= 2;
}
return sum;
}
};

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-26 15:18
点赞 评论 收藏
分享
喜欢核冬天的哈基米很想上市:会爆NullPointerException的
点赞 评论 收藏
分享
Ncsbbss:又想干活又想要工资,怎么什么好事都让你占了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务