首页 > 编程知识 正文

斐波那契数列题目,斐波那契数列两种算法

时间:2023-05-05 13:42:59 阅读:154387 作者:1405

Fibonacci数列的递推公式为Fn=Fn-1 Fn-2,其中F1=F2=1。

n大时,Fn也非常大。 我现在想知道Fn除以10007的馀数是多少。

输入格式

输入整数n。

输出格式

输出包含表示Fn除以10007后的馀数的整数的行。

说明:本题求出的答案是Fn除以10007的余数,所以我们只要能算出这个余数就可以了,算出Fn的准确值后,计算结果就不用再除以10007取余数了。 直接计算余数往往比先算出原数再取余数简单。

样品输入

10

样品输出

55

样品输入

22

样品输出

7704

import java.util.Scanner; 求public class Fibonacci {//斐波那契数列的要求范围很广,有时一定会超过int型。 正好这个问题又要求求10007的余数,把求的各项保存在数组前先对10007取余数也不影响结果。 //保存在数组中的最大数字为10006,必然不会超过数组的上限//求斐波那契数列的另一种方法是递归调用的方法returngetfib(n-1 ) getfib ) n-2 )静态int ) staticscannersc=new scanner (system.in ); publicstaticvoidmain (string [ ] args ) {nums[1]=1; nums[2]=1; int n=sc.nextInt (; for(intI=3; i=n; I({nums[I]=) nums[I-1]nums[I-2] ) 007; }system.out.println(nums[n]; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。