变态跳台阶_JAVA_简单

变态跳台阶

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

  • 设跳上n阶台阶的次数为f(n),跳上n阶台阶可以转换为最后一步上台阶,两步上台阶...n步上台阶,即为f(n) = S(n - 1)
  • 转换:

    由 f(n) = S(n - 1)
    则 f(n) = S(n - 1) = f(n - 1) + S(n - 2) = 2f(n - 1)

public class Solution {
    public int JumpFloorII(int target) {
        if(target <= 1) return 1;
        // f(n) = 2f(n - 1)
        return (int)Math.pow(2,target - 1);
    }
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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