递推法

#include<stdio.h>
long long sum[40];//也可以不用开数组
int main()
{int n;scanf("%d",&n);sum[1]=1;sum[2]=1;for(int t=3;t<=n;t++){sum[t]=sum[t-1]+sum[t-2];}printf("%lld",sum[n]);return 0;
} 

递归法

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

矩阵快速幂法

#include<stdio.h>
#include<string.h>
#define MOD 1000000007
struct Mat
{long long  a[5][5];
};
Mat res,ans;
Mat Mul(Mat x,Mat y)
{Mat s;memset(s.a,0,sizeof(s.a));for(int t=0;t<2;t++){for(int j=0;j<2;j++){for(int k=0;k<2;k++){s.a[t][j]+=x.a[t][k]*y.a[k][j];s.a[t][j]%=MOD;}}}return s;
}
void init()
{for(int t=0;t<2;t++){for(int j=0;j<2;j++){if(t==j){ans.a[t][j]=1;}else{ans.a[t][j]=0;}}}
}
void Quick_pow(long long  n)
{init();while(n){if(n&1){ans=Mul(ans,res);}res=Mul(res,res);n>>=1;}
}int main()
{long long n;while(scanf("%lld",&n)!=EOF){res.a[0][0]=1;res.a[0][1]=1;res.a[1][0]=1;res.a[1][1]=0;Quick_pow(n-1);printf("%lld\n",ans.a[0][0]);}return 0;
}

素数筛法

埃氏筛法:

#include<stdio.h>
#include<string.h>
#define maxn 100005
bool vis[maxn];
int Prime[maxn];
void Prime_E(int x){for(int t=2;t<=x;t++){if(vis[t]==true){for(int j=2*t;j<=x;j+=t){vis[j]=false;}}}
}
int main()
{int n;scanf("%d",&n);memset(vis,true,sizeof(vis));Prime_E(n);for(int t=2;t<=n;t++){if(vis[t]==true){printf("%d ",t);}}return 0;
}

欧拉筛法

#include<stdio.h>
#include<string.h>
#define maxn 100005
bool vis[maxn];
int prime[maxn];
void oula() {int cnt=0;memset(prime,0,sizeof(prime));memset(vis,false,sizeof(vis));for(int t=2; t<maxn; t++) {if(!vis[t])prime[cnt++]=t;for(int j=0; j<cnt&&t*prime[j]<maxn; j++) {vis[t*prime[j]]=true;if(t%prime[j]==0)break;}}
}
int main()
{int n;scanf("%d",&n);oula();for(int t=2;t<=n;t++){if(vis[t]==false){printf("%d ",t);}}return 0;
}

转载于:https://www.cnblogs.com/Staceyacm/p/10781783.html

斐波那契数列的3种求法及几种素数筛法相关推荐

  1. Interview:算法岗位面试—上海某公司算法岗位(偏机器学习,互联网金融行业)技术面试考点之数据结构相关考察点—斐波那契数列、八皇后问题、两种LCS问题

    ML岗位面试:上海某公司算法岗位(偏机器学习,互联网金融行业)技术面试考点之数据结构相关考察点-斐波那契数列.八皇后问题.两种LCS问题 Interview:算法岗位面试-上海某公司算法岗位(偏机器学 ...

  2. 求解斐波那契数列(Fibonacci Numbers)算法居然有9种,你知道哪几种吗?

    By LongLuo 斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为&q ...

  3. 递归与迭代 | 求斐波那契数列第n项值的四种算法

    前言: 昨儿晚上三点多睡不着,不知道胡思乱想了些啥,好不容易睡着了又做了些稀奇古怪的梦.考研还是继续,真难. 这一篇博客记录一下求斐波那契数列第n项值得几种方法,用到了递归和迭代的方法,所以首先我们来 ...

  4. c语言编程斐波那契前n项,c语言:写一个函数,输入n,求斐波拉契数列的第n项(5种方法,层层优化)...

    写一个函数,输入n,求斐波拉契数列的第n项. 斐波拉契数列:1,1,2,3,5,8...,当n大于等于3时,后一项为前面两项之和. 解:方法1:从斐波拉契数列的函数定义角度编程 #include in ...

  5. C#,斐波那契数列(Fibonacci Sequence)的八种算法与源代码

    一.莱昂纳多·斐波那契(Leonardo Fibonacci) 斐波那契公元1170年生于意大利比萨,卒于1250年,被人称作"比萨的莱昂纳多",是一名闻名于欧洲的数学家,其主要的 ...

  6. 递推公式斐波那契数列的几种求法

    什么是递推公式 递推公式就是形如斐波那契数列那样,每一项都由前面几项运算求得 下面以斐波那契数列为例讲解递推公式的几种求解方法 斐波那契数列 斐波那契数列形式如下: F(n)={1n=11n=2F(n ...

  7. 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------剑指offer系列

    题目:斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). f(n) = f(n-1) + f(n-2) 基本思路 这道题在剑指offe ...

  8. python侯先生爬楼梯_经典算法题:爬楼梯 ,以斐波那契数列来解题代码案例

    网上这题的解题思路主要有两种:动态规划 斐波那契数列 因为我们用斐波那契数列来解,所以我主要描述方法2. 斐波那契数列 又称 兔子数列, 指得是:1.1.2.3.5.8.13.21.--, 在数学上它 ...

  9. 实现斐波那契数列(js),以及复杂度降阶

    ##实现斐波那契数列(js),以及复杂度降阶 ###背景--兔子数列 假设第1个月有1对刚诞生的兔子,第2个月进入成熟期,第3个月开始生育兔子,而1对成熟的兔子每个月会生1对兔子,兔子永远不会死去** ...

  10. 斐波那契数列的四种实现

    来自:Crossin的编程教室 孔乙己自己知道不能和他们谈天,便只好向 Intern 说话.有一回对我说道,"你写过代码么?"我略略点一点头.他说,"写过代码,--我便考 ...

最新文章

  1. 神经网络理论基础及Python实现
  2. css 带轮廓的圆,CSS3 圆球轮廓动画
  3. css盒模型中margin很牛逼
  4. [转]学习object-c,补习一下指针
  5. 全球首发!惯性导航导论(剑桥大学)第八部分
  6. 如何在同一Linux服务器上创建多站点
  7. CNN卷积神经网络(二)
  8. Smarty下载和安装
  9. 拉登是我罩的队_软件需求规格说明书
  10. 夏至海报设计素材,都分享在这里了
  11. 解决局域网电脑无法ping通
  12. 刷完 900 多道算法题的首次总结:LeetCode 应该怎么刷?
  13. 找出java重复字符串,java 找出字符串出现重复的字符和次数
  14. 流媒体协议RTP、RTCP、H264详解
  15. 多次办理这项公积金业务都涉及到查询信用报告,是否会影响将来申请贷款?
  16. angular快速入门教程
  17. 高德地图 API,点击地图标记获取自定义标记 (Marker) 中的信息
  18. 山沟沟里的实业路(4)
  19. html5 制作 蓝色按钮,一组黑色质感的蓝色荧光3D按钮和单选按钮
  20. 中国制造2025大论战 到底能否弯道超车?

热门文章

  1. 使用率激增250%,这份报告再次将 Serverless 推向幕前
  2. 和你谈谈数据分析报告
  3. 对话阿里巴巴贾扬清:如何成为一名优秀的 AI 架构师?
  4. 文件按m3u8顺序合并_在线视频下载之m3u8篇
  5. ajax将数据显示在class为content的标签中_python selenium:自动化爬取某鱼数据
  6. 你们的蛙儿子成马云儿子了 阿里巴巴获得《旅行青蛙》独家代理权
  7. 创作一个数字人,总共分几步?(上)
  8. Java计算一段程序的运行时间
  9. Java模板引擎之freemarker简介
  10. [故障公告]14:40-15:00博客站点web服务器雪崩似的CPU 100%