博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
斐波那契数
阅读量:5134 次
发布时间:2019-06-13

本文共 867 字,大约阅读时间需要 2 分钟。

【题目描述】

小明现在知道斐波那契数列中的第X个数模P后的值N,即Fabonacci(X) mod P = N,以及X可能的最大值M,如果再对于斐波那契数列中每一个数都模P,他想知道这个数可能出现在第几个。

【输入描述】

一行,共3个整数,第一个数为N,第二个数为P,第三个数为X可能的最大值M,三个数以空格隔开。

【输出描述】

一个整数,满足Fabonacci(i) mod P = N的最小的i,如果不存在则输出-1。

【样例输入】

3 7 5

【样例输出】

4

【数据范围及提示】

对于20%的数据,保证0 < M ≤ 50;

对于50%的数据,保证0 < M ≤ 100;

对于70%的数据,保证0 < M ≤ 500;

对于100%的数据,保证0 < M ≤ 1000,0 ≤ N < P,P为素数且2 < P< 105。

源代码:#include
int m,n,p,f[1001];bool s(0);int main() //挺恶心的题。{ scanf("%d%d%d",&n,&p,&m); f[2]=f[1]=1; for (int a=3;a<=m;a++) { f[a]=(f[a-1]+f[a-2])%p; //Fabonacci数列大约在200左右就会超过int范围。 if (f[a]==n) { s=true; printf("%d",a); break; } } if (n==1) //别忘了f[1]和f[2]。 { s=true; printf("1"); } if (!s) printf("-1"); return 0;}

 

转载于:https://www.cnblogs.com/Ackermann/p/5558492.html

你可能感兴趣的文章
Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器 (转载)
查看>>
Python-装饰器
查看>>
代码静态检查工具PC-Lint运用实践
查看>>
dsu + lca
查看>>
软工网络15个人作业4——alpha阶段个人总结
查看>>
Linux基础-2文件及目录管理
查看>>
python re.sub
查看>>
《程序是怎样跑起来的》第二章
查看>>
TP5图片上传
查看>>
elasticsearch集群搭建
查看>>
【AtCoder】ARC090
查看>>
运用runtime与AOP实现oc中的kvo
查看>>
练习:查找指定目录(包括子目录)下的视频(格式为.mp4,.rmvb,.avi),并将目录存放在一个文件中...
查看>>
重新签名IOS .ipa文件 (包含第三方框架和插件)
查看>>
ML面试1000题系列(91-100)
查看>>
html5 Canvas
查看>>
使用GDB调试产生多进程的程序
查看>>
element ui里dialog关闭后清除验证条件
查看>>
asp.net mvc 之旅—— 第一站 从简单的razor入手
查看>>
[iOS]UIDynamicAnimator动画
查看>>