您的位置:首页 > 其它

第39级台阶

2014-05-27 16:24 211 查看


第39级台阶

小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!

站在台阶前,他突然又想着一个问题:

如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?

官方答案:51167078

public class Main {

/**
* @param args
* @throws IOException
*/
static int res = 0;

public static void main(String[] args) {
// TODO Auto-generated method stub
F(0, 0);
System.out.println(res);
}

private static void F(int x, int y) {
// TODO Auto-generated method stub
if (y >= 39) {//特别注意着一点,y有可能是 >39, 比如38+2;
//如果不对 >39进行处理,则会发生java.lang.StackOverflowError
if (y == 39 && x % 2 == 0)
res++;
return;
}
F(x + 1, y + 1);
F(x + 1, y + 2);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: