//本题用动态规划求解 //果然数学还是卡人,这个题本身没难度,唯一难点就是在状态转移方程 //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]; } }