题解 | #跳台阶#

跳台阶

https://www.nowcoder.com/practice/bfb2a2b3cdbd4bd6bba0d4dca69aa3f0

#include <stdio.h>
/*
首先是n的取值范围0~40,确认0和1方法就是1,即为初值;
其次需要想清楚f(n),因为只有f(n - 1)和f(n - 2)才可以跳入f(n),所以f(n) = f(n - 1) + f(n - 2).
*/
int jump(int n)
{
    if(n < 0 || n > 40)
        return -1;

    if (n == 0 || n == 1)
        return 1;
    else
    {
        return jump(n - 1) + jump(n - 2);
    };
}

int main() {
    int a;
    while (scanf("%d", &a) != EOF) { // 注意 while 处理多个 case
        // 64 位输出请用 printf("%lld") to 
        printf("%d\n", jump(a));
    }
    return 0;
}

全部评论

相关推荐

05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务