首页 > 其他分享 >斐波拉契数列

斐波拉契数列

时间:2024-10-21 12:18:25浏览次数:3  
标签:return 数列 int 波拉 else Fib main SECURE

从 0 开始,如: 0,1,1,2,3,5,8…

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//递归实现
int Fib(int x)
{
    if (x <= 0)
    {
        return 0;
    }
    else if (x>2)
    {
        return Fib(x-1) + Fib(x-2);
    }
    else if(x <=2 && x > 0)
    {
        return 1;
    }
}


int main()
{
    int n = 0;
    scanf("%d", &n);
    n = n -1;
    printf("%d", Fib(n));
    return 0;
}

从 1 开始,如: 1,1,2,3,5,8…

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//递归实现
int Fib(int n)
{
    if (n >= 3)
        return Fib(n - 2) + Fib(n - 1);
    else
        return 1;
}
int main()
{
    int n = 0;
    scanf("%d", &n);
    n = n -1;
    printf("%d", Fib(n));
    return 0;
}

标签:return,数列,int,波拉,else,Fib,main,SECURE
From: https://blog.csdn.net/ydm_ymz/article/details/143061894

相关文章

  • 递推数列的极限(上)------单调有界部分
    不管怎么样,求极限之前都要先证明极限存在,即数列收敛。证明数列收敛两种方法:一种是单调有界准则,一种是夹逼准则。一.单调有界准则例1上面这道题的心路历程:先在草稿纸用上帝视角求出‘极限’,虽然是猜的,但是一定是对的。然后根据这个极限,以及题目给的条件,比如这道题给......
  • (算法)等差数列划分————<动态规划>
    1.题⽬链接:413.等差数列划分2.题⽬描述:3.解法(动态规划):算法思路:1.状态表⽰:由于我们的研究对象是「⼀段连续的区间」,如果我们状态表⽰定义成[0,i]区间内⼀共有多少等差数列,那么我们在分析dp[i]的状态转移时,会⽆从下⼿,因为我们不清楚前⾯那么多的「等差数列都在什......
  • 无聊的数列
    通过这道题,了解了标记永久化的思想,也加深了对线段树的理解~另外,这道题也是可以将原数组转化成差分数组做点击查看代码#include<bits/stdc++.h>usingnamespacestd;longlonga[100005];structt1{ longlongl,r; longlongk,d;}t[400005];voidbuild(longlong......
  • 洛谷 P5175 数列 题解
    纯纯数学题。看到\(n\le10^{18}\)不难想到矩乘,但是\(\log_210^{18}\approx60\),再加上\(T=30000\)的多测,运算量已经来到了\(1.8\times10^6\),所以我们最多有一个\(\sqrt[3]{\frac{1.5\times10^8}{6\times10^6}}\approx4\)的矩阵。\[\becausea_i=xa_{i-1}+ya_{......
  • 【算法】动态规划:从斐波那契数列到背包问题
    【算法】动态规划:从斐波那契数列到背包问题文章目录【算法】动态规划:从斐波那契数列到背包问题1.斐波那契数列2.爬楼梯3.零钱转换Python代码4.零钱兑换II5.组合数dp和排列数dp6.为什么动态规划的核心思想计算组合数的正确方法代码实现为什么先遍历硬币再遍历金额可以......
  • [题目记录]一本通高手训练-数列
    题意定义n-数列为满足以下条件的数列\({a_i}\):数列长度不小于\(3\),且每个元素为\(1\)到\(n\)的整数.对于任意\(k\ge3\),有$(a_k-a_{k-2})(a_{k-1}-a_{k-2})<0$.给出\(n\),求n-数列的个数,对\(10^9+7\)取模.\(n\le10^{500000}\)时空限制......
  • LOJ 数列分块入门2
    算法考虑求小于给定值的数的个数,可以给每个块再维护一个已经排好序的数组,整块加法对于这个块排好序的数组没有影响,零散块加法直接在原序列上加,再将零散块所处的整块从新排序。查询时零散块暴力查找,整块二分查找代码#include<bits/stdc++.h>#defineintlonglongconstintM......
  • 洛谷P2513 逆序对数列
    Problem给定n,k,求得1~n中有多少种排列使得逆序对个数为k?(n,k<=1000)Solve考虑DP:设f[i][j]为i个数中逆序对数量为j的排列数量但因为我们并不知道我们这i个数到底是谁,难以通过以前的状态得到设f[i][j]为将i放入之前的排列后,逆序对数量为k的排列数此时我们发现可以确定前i-1......
  • 数列 题解
    题意给出一张联通图,图上每个点有红蓝两色,给每一条边都赋一个权值,使得所有的红边构成一颗最小生成树,且权值是\(1\)到\(m\)的排列,求字典序最小的情况。题解对于一条蓝边,其权值一定小于除它以外全是红边的环上的所有红边的权值(有点绕),否则就构不成一颗生成树。所以只需要按顺......
  • 信息学奥赛复赛复习11-CSP-J2020-04方格取数-动态规划、斐波那契数列、最优子结构、重
    PDF文档公众号回复关键字:202410041P7074[CSP-J2020]方格取数[题目描述]设有n×m的方格图,每个方格中都有一个整数。现有一只小熊,想从图的左上角走到右下角,每一步只能向上、向下或向右走一格,并且不能重复经过已经走过的方格,也不能走出边界。小熊会取走所有经过的方格中......