博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 基础编程练习6
阅读量:710 次
发布时间:2019-03-21

本文共 792 字,大约阅读时间需要 2 分钟。

题目描述:

小乐乐上课需要走n阶台阶,因为他腿比较长,所以每次可以选择走一阶或者走两阶,那么他一共有多少种走法?

输入描述:

输入包含一个整数n (1 ≤ n ≤ 30)

输出描述:

输出一个整数,即小乐乐可以走的方法数。

示例1

输入

2

输出

2

示例2

输入

10

输出

89

解题思路:

  • 当只有一格楼梯的时候,只有一种走法。
  • 当有两格楼梯的时候,有两种走法。
  • 当有三格楼梯的时候,乐乐可以从第一级直接走上来(因为他可以直接走两级)【1种】,也可以选择从第二级走上来(那么他就直接走一级)【2种】,一共是1+2种走法。
  • 当有四格楼梯的时候,乐乐可以从第二级直接走上来(因为他可以直接走两级)【2种】,也可以选择从第三级走上来(那么他就直接走一级)【3种】,一共是2+3种走法。
  • 所以可以发现,他其实遵循的是斐波那契数列:1,2,3,5,8,13…
import java.util.Scanner;public class Main{
public static void main(String [] args){
Scanner in =new Scanner (System.in); int n=in.nextInt(); System.out.print(fun(n)); } //斐波那契数列函数,用递归实现 public static int fun(int n){
if (n == 1) return 1; else if (n == 2) return 2; else return fun(n - 1) + fun(n - 2); }}

转载地址:http://rbjrz.baihongyu.com/

你可能感兴趣的文章