/**
*
* @author linjianfeng
*
* 标题: 第39级台阶
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!
站在台阶前,他突然又想着一个问题:
如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?
*/
public class Test {
private static int count = 0; // 记录走法数量
public void getResult(int level, int m) {
if (m < 0)
return;
// 39阶并偶数步时退出循环
if (m == 0 && level % 2 == 0) {
//System.out.println("步数:" + level);
count++;
return;
}
// 共两种可能,一种一步,一种两步
for (int i = 1; i <= 2; i++) {
getResult(level + 1, m - i);
}
}
public static void main(String[] args) {
Test test = new Test();
test.getResult(0, 39);
System.out.println("走法:" + count);
}
}
走法:51167078