牛客网 变态跳台阶

题目:

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

思路:

我采用列举的方法:

1表示跳一级,2表示跳两级,...,

当target=1时:1,一种方法

当target=2时:11,2,两种方法

当target=3时:111,12,21,3,四种方法

当target=4时:1111,112,121,211,22,13,31,4,八种方法

当target=5时:11111,2111,1211,1121,1112,221,212,122,311,131,113,23,32,14,41,5,十六种方法

总结就是2的target-1次幂

代码:

import java.lang.Math;
public class Solution {
    public int JumpFloorII(int target) {
        int result=(int)(Math.pow(2,target-1));
        return result;
    }
}

需要注意的是:

Math.pow(a,b):返回的数是double类型的,使用强制类型转换,转换为int类型。

阅读更多
上一篇牛客网 跳台阶
下一篇牛客网 矩形覆盖
想对作者说点什么? 我来说一句

牛客网笔试真题汇总:Java篇.docx

2017年09月02日 120KB 下载

牛客网直播视频 2015.8.12 答案

2015年09月17日 5KB 下载

牛客网华为机试

2017年08月10日 23KB 下载

牛客网中级项目全部代码

2017年03月25日 1.89MB 下载

牛客网 剑指offer题解

2018年03月02日 864KB 下载

没有更多推荐了,返回首页

关闭
关闭