试题1 入门训练 Fibonacci数列
问题描述
Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。
当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。
输入格式
输入包含一个整数n。
输出格式
输出一行,包含一个整数,表示Fn除以10007的余数。
样例输入
10
样例输出
55
样例输入
22
样例输出
7704
- 分析思路:
Fibonacci数列,计算到后面出现指数级别的增长,所以要对它进行取模运算
有两种方法:
1.先整体计算后取模,(f(n-1)+f(n-2))%mod;
2.先进行分别取模,之后再取模f(n-1)%mod+f(n-2)%mod;
具体选哪个,看数据范围要求
- 代码:
#include<iostream>
using namespace std;const int N=1000010;
int f(int n){if(n==1||n==2) return 1;return f(n-1)%10007+f(n-2)%10007;
}int main(){int n;cin>>n;cout<<f(n);return 0;}
运行超时,内存空间超出限制,采用下面代码
- 正确代码:
采用数组,不会超时,时间复杂度也变为O(n)
#include<iostream>
using namespace std;int main()
{int n;cin>>n;long long f[n];f[0] = 0,f[1] = 1;for(int i=2;i<=n;i++){f[i] = (f[i-2]+f[i-1])%10007;}cout<<f[n]<<endl;return 0;
}
试题1 入门训练 Fibonacci数列相关推荐
- 试题 入门训练 Fibonacci数列
试题 入门训练 Fibonacci数列 提交此题 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. ...
- 入门训练 Fibonacci数列-python实现
入门训练 Fibonacci数列 时间限制:1.0s 内存限制:256.0MB 问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大 ...
- 入门训练 Fibonacci数列 c语言
入门训练 Fibonacci数列 问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多 ...
- 入门训练 Fibonacci数列
http://lx.lanqiao.org/problem.page?gpid=T4 入门训练 Fibonacci数列 时间限制:1.0s 内存限制:256.0MB 问题描述 Fibonacc ...
- 蓝桥杯练习题Java实现 入门训练 Fibonacci数列
蓝桥杯练习题Java实现 入门训练 Fibonacci数列 问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,F ...
- 【c语言】蓝桥杯入门训练 Fibonacci数列
[问题描述] Fibonacci数列的递推公式为:Fn=F(n-1)+F(n-2),其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. [输入格式] 输 ...
- 蓝桥杯入门训练Fibonacci数列
问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n ...
- 蓝桥杯 入门训练 Fibonacci数列
问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n ...
- [Java] 蓝桥杯 BEGIN-4 入门训练 Fibonacci数列
问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n ...
最新文章
- 网络工程师_记录的一些真题_2017下半年上午
- Macbook外接显示器模糊解决方法
- 使用sshfs挂载linux远程服务器目录到windows
- 那天我去逛街,发现连大编程语言都摆起地摊了……
- 基于病害区域图像的植物病害识别深度学习(创新点好理解)
- 单片机c语言音符发生,单片机C语言程序的设计实训100例基于8051Proteus仿真.doc
- 2018年【计算机视觉+机器学习+人工智能】领域重要会议汇总
- 【Java】01 初识 Java
- Java笔试面试(社招版)
- java内存模型作用是什么意思_JMM(Java内存模型)是什么?为什么使用并发?
- 围绕边框宽度的html,设置围绕表格的边框宽度的HTML代码是?
- 计算机应用700字自我鉴定,有关计算机应用自我鉴定
- 后台弹窗,弹窗跳转页面
- Base64与图片之间互相转换
- shell 脚本批量检测主机存活状态
- 七段数码管的显示 滚动显示
- WinImage 8.5版本制作任意容量的ima或img磁盘文件
- Java集合之Set去重
- eclipse下搭建SWT图形界面开发环境
- 企业数字化转型的核心是什么?如何才能真正做到数字化转型?
热门文章
- python自动化办公excel-自动化办公:python操作Excel
- python免费全套教程-2020全网 最详细的Python入门教程完整版,无偿分享,收藏
- python从入门到放弃-python从入门到放弃--day1
- python是什么-马哥教育官网-专业Linux培训班,Python培训机构
- 智能语音识别究竟是如何实现的?
- JS中的语音识别——Speech Recognition API
- elementUI 学习入门之 Button 按钮
- Function的常用属性和方法
- Media Player Classic - HC 源代码分析 5:关于对话框 (CAboutDlg)
- 表必须要有主键吗_玄关隔断什么材质好?玄关隔断必须要做吗