题目描述
解答:
JavaScript求解:
function jumpFloorII(number)
{
return Math.pow(2, number-1);
}
module.exports = {
jumpFloorII : jumpFloorII;
};
Java求解:
public class Solution {
public int JumpFloorII(int target) {
if(target == 0) {
return 0;
}
int[] dp = new int[target + 1];
dp[0] = 1;
dp[1] = 1;
for(int i = 2;i <= target;i++) {
dp[i] = 0;
for(int j = 0;j < i;j++) {
dp[i] += dp[j];
}
}
return dp[target];
}
}
C++解答:
class Solution {
public:
int jumpFloorII(int number) {
return 1<<--number;
}
};
Python解答:
class Solution:
def jumpFloorII(self, number):
'''if number <= 0:
return 0
res = [0 for i in range(number)]
res[0] = 1
for i in range(1, number):
res[i] = 1 + sum(res)
return res[-1]'''
if number <= 0:
return 0
return 2 ** (number - 1)
C#解答:
class Solution
{
public int jumpFloorII(int number)
{
if(number == 1) return 1;
return (int)System.Math.Pow(2,number-1);
}
}