第一种解法
这道题是这样思考的,n表示有n个台阶。那么-->
if(n==1) ans?
if(n==2) ans?
if(n==3) ans?
if(n==4) ans?
相信你算前四项后,会有很大的发现。(just do it)
package 变态跳台阶;
public class Solution {
static final int MAX = 32;
static int[] res = new int[MAX];
static {
for (int i = 1; i < 31; i++) {
res[i] = 1 << (i - 1);
}
}
public int JumpFloorII(int target) {
return res[target];
}
public static void main(String[] args) {
System.out.println(new Solution().JumpFloorII(3));
}
}