IT评测·应用市场-qidao123.com技术社区

标题: 牛客网刷题 ——C语言初阶——BC117 小乐乐走台阶 [打印本页]

作者: 我爱普洱茶    时间: 2025-1-4 13:58
标题: 牛客网刷题 ——C语言初阶——BC117 小乐乐走台阶
1.题目 :BC117 小乐乐走台阶

牛客OJ题链接

小乐乐上课须要走n阶台阶,由于他腿比较长,以是每次可以选择走一阶大概走两阶,那么他一共有多少种走法?

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

输出一个整数,即小乐乐可以走的方法数。
   示例1:
输入:2
输出:2
    示例2:
输入:10
输出:89
  2.思绪

一开始不知道是什么,分析了下,
1个台阶只有1种走法
2个台阶有2种走法(1个1个走 || 一次走2个)
3个台阶有3种走法(1个1个走 || 第一次走2个,第二次走1个||第一次走1个,第二次走2个)
4个台阶有5种走法(1个1个走||2个2个走||第一次走1个,第二次走2个,第三次走1个||第一次走2个,第二次走1个,第三次走1个|| 第一次走1个,第二次走1个,第三次再走2个)
这看起来就眼熟了这不是斐波那契么。除了前两项,背面的都是前面两项相加。直接写代码
3.代码实现

  1. #include <stdio.h>
  2. int step(int n)
  3. {
  4.     if(n <=2)
  5.     {
  6.         return n;
  7.     }
  8.     else
  9.     {
  10.         return step(n-1)+step(n-2);
  11.    
  12.     }
  13. }
  14. int main() {
  15.     int a;
  16.     while (scanf("%d ", &a) != EOF) {
  17.       int b =  step(a);
  18.       printf("%d",b);
  19.     }
  20.     return 0;
  21. }
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) Powered by Discuz! X3.4