牛客网 BC107-小乐乐走台阶(递归)

2022/1/5 6:10:37

本文主要是介绍牛客网 BC107-小乐乐走台阶(递归),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目描述

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

输入描述:

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

输出描述:

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

示例1

输入

2

输出

示例2

输入

10

输出

89


答题思路:

n=1时,乐乐腿再长,也只有一个走法,就直接一步走完;

n=2时,乐乐有两种走法,①一次走一个台阶,两次结束②一次走两个台阶,一次结束;

n>2时,①第一次一个台阶,剩下n-1个台阶②第一次走两个台阶,剩下n-2个台阶;

详解如下所示,即为:

 

 

 

易得该模型类似于斐波那契数列,可以用递归方法 

大体思路已有,下面直接上代码:

#include <stdio.h>
int fib(int n)
{    
     if(n<=2)
        return n; 
     else 
        return fib(n-1)+fib(n-2);
}
int main()
{    
     int n = 0;
     scanf("%d", &n);
     printf("%d\n", fib(n));
     return 0;
}



这篇关于牛客网 BC107-小乐乐走台阶(递归)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程