第39级台阶
2015-04-04 14:23
211 查看
题目描述
题目标题: 第39级台阶
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!
站在台阶前,他突然又想着一个问题:
如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?
请你利用计算机的优势,帮助小明寻找答案。
要求提交的是一个整数。
注意:不要提交解答过程,或其它的辅助说明文字。
解释:最后一定是右脚,那么前面一个是左脚,我们这里设1为右脚,0为左脚,一路递推,则有
c[i][0] = c[i - 1][1] + c[i - 2][1];
c[i][1] = c[i - 1][0] + c[i - 2][0];
题目标题: 第39级台阶
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!
站在台阶前,他突然又想着一个问题:
如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?
请你利用计算机的优势,帮助小明寻找答案。
要求提交的是一个整数。
注意:不要提交解答过程,或其它的辅助说明文字。
解释:最后一定是右脚,那么前面一个是左脚,我们这里设1为右脚,0为左脚,一路递推,则有
c[i][0] = c[i - 1][1] + c[i - 2][1];
c[i][1] = c[i - 1][0] + c[i - 2][0];
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt();// 输入的阶梯数 System.out.println(JumpFloor(n)); } public static int JumpFloor(int target) { int i; int c[][] = new int[target+1][2]; c[0][0] = c[1][1] = 0; c[0][1] = c[1][0] = 1; for (i = 2; i <= target; ++i) { c[i][0] = c[i - 1][1] + c[i - 2][1]; c[i][1] = c[i - 1][0] + c[i - 2][0]; } return c[target][1]; } }
相关文章推荐
- 蓝桥杯 C本科B组 第39级台阶
- 第39级台阶
- 1003-第39级台阶
- 第39级台阶 蓝桥杯
- 2013第四届蓝桥杯预赛试题本科c++第39级台阶
- 第39级台阶 蓝桥杯
- 蓝桥杯-第39级台阶
- 第39级台阶(dp)
- 蓝桥杯 第39级台阶 dfs
- 递归问题,实例4,第39级台阶
- 蓝桥杯-第39级台阶
- 第39级台阶 递归
- 【蓝桥杯】第39级台阶
- 第四届 蓝桥杯C/C++ B组:第3题第39级台阶
- [蓝桥杯历届试题] 第39级台阶
- 第39级台阶 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!
- 蓝桥杯 第39级台阶
- 蓝桥杯--第39级台阶
- 第四届蓝桥杯C++B组——第39级台阶(dfs)
- 第39级台阶