递归--Fibonacci数列 I

news2024/9/21 19:08:59

描述

众所周知,Fibonacci数列是一个著名数列。它的定义是:

本组题目共有 5 题,请分别用 5 种不同的方式来完成,并比较这些做法的时间。
本题要求采用第一种方法:递归,且不得使用数组记忆结果。

输入描述

每行一个整数 i ,表示 Fibonacci 数列的第 i 项。i ≤ 46
如果你不知道本题规定做法的时间复杂度,计算一下 2 的 46 次幂有多大,就知道了。

输出描述

对每个输入的整数 i,输出一行结果:Fibonacci 数列的第 i 项对 100000009 取模的结果。

注意

本题要求模运算的目的是防止运算结果上溢出:在循环中的每一次加法,均执行求模,即可防止溢出。
加法模运算规则:
( a + b ) % c = ( ( a % c ) + ( b % c ) ) % c
请用递归方法求解本题,否则判 cheat 且 封号 。 不会写递归函数的,请先看书学会再写。

一道简单的oj题,主要是对递归的简单使用,话不多说,上代码

#include<stdio.h>
int fio(int n);
int main(){
	int aa;
	while(scanf("%d",&aa)!=EOF&&aa<=46){
		printf("%d\n",fio(aa));
	}
} 
int fio(int n){
	if(n==1)
		return 1;
	else if(n==0)
		return 0;
	else
		return (fio(n-1)+fio(n-2))%100000009;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/733272.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

备忘录方法--Fibonacci数列 IV

描述 众所周知&#xff0c;Fibonacci数列是一个著名数列。它的定义是&#xff1a; 本题要求采用第四种方法&#xff1a;备忘录方法&#xff0c;即记忆化搜索。 具体做法是&#xff1a;用数组把曾经求出来的 Fibonacci 数列保存下来&#xff0c;以后要的时候直接取出来。 输入…

【剑指offer】5.重建二叉树(java)

文章目录 重建二叉树描述示例1示例2示例3思路完整代码 重建二叉树 描述 给定节点数为 n 的二叉树的前序遍历和中序遍历结果&#xff0c;请重建出该二叉树并返回它的头结点。 例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6}&#xff0c;则重建出如下…

vue+electron项目实战总结(遇到了哪些问题,是如何解决的,哪个阶段需要做什么,附带一些常用方法)

electron作为一个将网页打包成桌面应用的工具 非常强大&#xff0c;在使用electron的时候 要相信 它可以实现所有现代软件能够支撑的功能&#xff0c;下面我总结一下我在 vueelectron经过4次 大版本更新才趋于稳定的开发经验。 一、开发套路&#xff1a; 消息通信数据驱动 使用…

LIN总线与RS485总线

LIN&#xff08;Local Interconnect Network&#xff0c;局部互连网络&#xff09;总线和RS485都是用于设备间通信的串行通信协议。下面我将分别列出它们的优势和劣势。 LIN总线的优势&#xff1a; 简单性&#xff1a;LIN总线的硬件和协议简单&#xff0c;易于实现和维护。成…

多元回归预测 | Matlab基于逻辑回归(Logistic Regression)的数据回归预测,多输入单输出模型

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元回归预测 | Matlab基于逻辑回归(Logistic Regression)的数据回归预测,多输入单输出模型 评价指标包括:MAE、RMSE和R2等,代码质量极高,方便学习和替换数据。要求2018版本及以上。 部分源码 %% 清空环境变量…

炸裂了…京东一面索命40问,过了就50W+

说在前面 在40岁老架构师尼恩的&#xff08;50&#xff09;读者社区中&#xff0c;经常有小伙伴&#xff0c;需要面试京东、阿里、 百度、头条、美团等大厂。 下面是一个小伙伴成功拿到通过了京东一次技术面试&#xff0c;最终&#xff0c;小伙伴通过后几面技术拷问、灵魂拷问…

MySQL的存储引擎与基本使用

目录 一、前言 1.MySQL的介绍 二、存储引擎 1.什么是存储引擎 2.常见存储引擎 2.1.InnoDB(MySQL默认引擎) 2.1.1.四种隔离级别 2.2.MyISAM存储引擎 2.3.Memory存储引擎 3.ACID事务 三、CRUD操作 1.插入数据 2.查询数据 3.修改数据 4.删除数据 四、数据库 1.默认…

C#学习之路-基本语法

C# 是一种面向对象的编程语言。在面向对象的程序设计方法中&#xff0c;程序由各种相互交互的对象组成。相同种类的对象通常具有相同的类型&#xff0c;或者说&#xff0c;是在相同的 class 中。 using System; using System.Collections.Generic; using System.Linq; using S…

OpenCV库进行图像旋转、仿射变换和透视变换

#include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp>

解决Linux操作系统ping不同www.baidu.com问题

首先给自己管理员权限 输入代码 su然后输入密码密码不会显示打完直接回车 输入下面代码配置网络 cd /etc/sysconfig/network-scripts 输入以下代码进入ens33管理 vim ifcfg-ens33 输入 i i用方向键把光标移到 ONBOOT NO 把 no 改为 yes 按下 ESC 退出编辑模式 直接敲…

二叉树前中后序的非递归实现

前言 &#xff1a; 递归我们会有一些问题的 为什么有递归就一定有非递归呢&#xff1f;&#xff1f;首先递归是有一定缺陷的 递归真正的缺陷是&#xff0c;每一个程序运行起来呢都是一个线程的形式&#xff0c;但是每一个线程都会有独立的栈空间&#xff0c;但是栈空间是很…

Spring Boot 中的 Future 接口是什么,如何使用

Spring Boot 中的 Future 接口是什么&#xff0c;如何使用 在异步编程中&#xff0c;我们通常需要处理一些耗时的操作。一种常见的做法是使用 Future 接口来代表一个异步操作的结果。在 Spring Boot 中&#xff0c;Future 接口被广泛应用于异步编程中&#xff0c;本文将介绍 S…

【C++】VSCode 使用 C/C++ Compile Run 插件时,设置默认运行的编译参数的方法

为什么要设置参数 最近在学习C&#xff0c;在学习多线程的时候&#xff0c;发现使用C11中的thread类写的代码编译会报错&#xff1a; * 正在执行任务: g -Wall -Wextra -g3 /Users/anweiyang/studySrc/C/ThreadTest.cpp -o /Users/anweiyang/studySrc/C/output/ThreadTest /U…

OpenCV使用putText将文字绘制到图像上

#include <opencv2/opencv.hpp>int main(int argc, char **argv) {cv::Mat image = cv::imread(

开发实例:实现一个时间轮算法

时间轮算法是一种比较常见的时间计数器算法&#xff0c;它主要用于定时器的处理。在Java开发中&#xff0c;我们可以使用这种算法来实现非常高效且精准的定时器功能。下面&#xff0c;我将为大家介绍一个基于时间轮算法的定时器实现方法。 1、定义时间轮的数据结构 首先&…

spring 详解一 IOC(BeanFactory和ApplicationContext)

spring概述 重要部分 Spring是一个容器&#xff0c;用来管理java对象的创建以及其他功能的扩展&#xff0c;目前java的生态已经离不开spring&#xff0c;所以spring在java领域是一个极其重要的框架&#xff0c;在spring的思想中IOC(控制反转&#xff09;和AOP(切面编程)是重要…

Portraiture最新PS/LR 4.1.0.3皮肤修饰插件

Portraiture是一款惹人喜爱的PS磨皮插件。它能智能地对图像中的皮肤材质、头发、眉毛、睫毛等部位进行平滑和减少疵点处理&#xff0c;相对于Camera RAW&#xff0c;它能选择肌肤的色彩范围&#xff0c;对选择的部分进行单独处理。这样避免了其他部分同时被美化。 Portraiture…

C#(五十)之stringBuilder类

使用StringBuilder 需引用命名空间 using System.Text; String类与StringBuilder类的区别&#xff1a; string是各位用的最多的类型之一&#xff0c;是一个特殊的引用类型&#xff0c;直接派生于Object&#xff0c;因此它的值储存在托管堆上。构造一个新字符串的时候&#xf…

使用TestNG搭建自动化测试框架设计说明书

TestNG自动化测试框架V1.0 1. 背景............................................................................................................................ 4 1.1 编写背景.....................................................................................…

深度神经网络量化算法基础理论

关于量化&#xff0c;之前的博客中首先从第一个将量化思想应用在神经网络模型上的工作开始介绍&#xff0c;随后阐述了量化领域的极端情况&#xff0c;即二值化与三值化&#xff0c;并指出尽管目前已经存在多种对二值网络的优化方法&#xff0c;但是显然因极端量化带来的严重精…