变态跳台阶
2018-04-14 00:28
155 查看
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解析:普通跳台阶的升级版,但其实代码写法差别比较大。普通跳台阶的递推式:dp[i] = dp[i - 第1种跳法] + ... + dp[i - 第k种跳法]。变态跳台阶不仅要加上之前全部的,还得多加个1,所以是两层循环,内层逆向。
代码:
public int JumpFloorII(int target) {
int[] dp = new int[target + 1];
dp[0] = 0;
for (int i = 1; i <= target; ++i) {
dp[i] = 1;
for (int j = i - 1; j >= 0; --j) {
dp[i] += dp[j];
}
}
return dp[target];
}
代码:
public int JumpFloorII(int target) {
int[] dp = new int[target + 1];
dp[0] = 0;
for (int i = 1; i <= target; ++i) {
dp[i] = 1;
for (int j = i - 1; j >= 0; --j) {
dp[i] += dp[j];
}
}
return dp[target];
}
相关文章推荐
- [九度][何海涛] 变态跳台阶
- 九度1389 剑指offer 变态跳台阶
- 【剑指Offer面试编程题】题目1389:变态跳台阶--九度OJ
- 跳台阶问题(变态跳台阶)的三种解法
- 面试题9(变形):变态跳台阶
- 【练习笔记】剑指offer-变态跳台阶
- 题目1389:变态跳台阶 简单DP
- 剑指offer 9 变态跳台阶
- 变态跳台阶
- 【牛客网】递归循环之变态跳台阶
- 第1题 变态跳台阶【剑指Offer编程题】
- 剑指offer 面试题9 斐波那契数列/青蛙跳台阶/矩形覆盖/变态跳台阶
- 剑指offer面试题[9-2]-变态跳台阶
- [牛客网,剑指offer,python] 变态跳台阶
- 变态的台阶
- 斐波那契数列及其变形问题(跳台阶,变态跳台阶,矩形覆盖)
- 变态跳台阶
- 剑指Offer [09] 变态跳台阶
- 剑指offer第九题(变态跳台阶)
- Offer - 10** - 变态跳台阶