//本题用动态规划求解 
//果然数学还是卡人,这个题本身没难度,唯一难点就是在状态转移方程
//dp[n]设为到n的跳数
//f(n) = f(n-1) + f(n-2) +....+f(0)
//f(n-1) = f(n-2) + f(n-3) +......+f(0)
//所以 f(n) = 2 * f(n-1);  dp[i] =  2 *dp[i-1]

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param number int整型
     * @return int整型
     */
    public int jumpFloorII (int number) {



        int[] dp = new int[number + 1];
        dp[0] = dp[1] = 1;

        for (int i = 2; i <= number ; i++) {
            dp[i] =  2 * dp[i - 1];
        }

        return dp[number];
    }
}