java实现第39级台阶(三十九级台阶)

标题: 第39级台阶
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!
站在台阶前,他突然又想着一个问题:
如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?
请你利用计算机的优势,帮助小明寻找答案。
要求提交的是一个整数。
注意:不要提交解答过程,或其它的辅助说明文字。

思路:使用两个参数,一个参数 step 记录走了多少步,另一个参数 stairs 记录走了多少台阶,台阶数stairs大于 39 作为退出条件,如果刚好等于 39 判断步数是否为偶数,是的话,count ++,不是偶数的话返回,其中一步的情况有两种可能走一步台阶和两步台阶。


// 上楼问题的变种,必须偶数步
public class A
{
	// n 级台阶,奇数步
	static int g(int n)
	{
		if(n==1) return 1;
		if(n==2) return 1;
		
		return f(n-1) + f(n-2);
	}
	
	// n 级台阶,偶数步
	static int f(int n)
	{
		if(n==1) return 0;
		if(n==2) return 1;
		//if(n==3) return 2;
		
		return g(n-1) + g(n-2);
	}
	
	public static void main(String[] args)
	{
		System.out.println(f(39));
	}
}
  • 20
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 25
    评论
实现一个三级菜单可以使用 Java Swing 中的 JTree 组件。以下是一个简单的示例代码: ```java import javax.swing.JFrame; import javax.swing.JTree; import javax.swing.tree.DefaultMutableTreeNode; public class ThreeLevelMenuExample { public static void main(String[] args) { // 创建根节点 DefaultMutableTreeNode root = new DefaultMutableTreeNode("根节点"); // 创建一级节点 DefaultMutableTreeNode level1Node1 = new DefaultMutableTreeNode("一级节点1"); DefaultMutableTreeNode level1Node2 = new DefaultMutableTreeNode("一级节点2"); root.add(level1Node1); root.add(level1Node2); // 创建二级节点 DefaultMutableTreeNode level2Node1 = new DefaultMutableTreeNode("二级节点1"); DefaultMutableTreeNode level2Node2 = new DefaultMutableTreeNode("二级节点2"); level1Node1.add(level2Node1); level1Node1.add(level2Node2); // 创建三级节点 DefaultMutableTreeNode level3Node1 = new DefaultMutableTreeNode("三级节点1"); DefaultMutableTreeNode level3Node2 = new DefaultMutableTreeNode("三级节点2"); level2Node1.add(level3Node1); level2Node1.add(level3Node2); // 创建 JTree JTree tree = new JTree(root); // 创建窗口并将 JTree 添加到窗口中 JFrame frame = new JFrame("三级菜单"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(tree); frame.pack(); frame.setVisible(true); } } ``` 在上面的代码中,我们通过创建 DefaultMutableTreeNode 对象来构建树形结构。首先创建根节点 `root`,然后创建两个一级节点 `level1Node1` 和 `level1Node2`,将它们添加到根节点中。接着创建两个二级节点 `level2Node1` 和 `level2Node2`,将它们添加到一级节点 `level1Node1` 中。最后创建两个三级节点 `level3Node1` 和 `level3Node2`,将它们添加到二级节点 `level2Node1` 中。最后将树形结构传入 JTree 组件中并将 JTree 添加到 JFrame 窗口中,运行程序即可看到一个简单的三级菜单。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值