zoukankan      html  css  js  c++  java
  • (Java)入门训练 斐波那契数列

    问题描述

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

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

    输入格式

    输入包含一个整数n。

    输出格式

    输出一行,包含一个整数,表示Fn除以10007的余数。

    说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。

    样例输入

    10

    样例输出

    55

    样例输入

    22

    样例输出

    7704

    数据规模与约定

    1 <= n <= 1,000,000。

    正确的源程序:

    import java.math.BigDecimal;
    import java.math.BigInteger;
    import java.util.Scanner;
    
    public class Main {
    
        public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            int n = in.nextInt();
            int[] a=new int[1000001];
            a[1]=a[2]=1;
            for(int i=3;i<=n;i++)
                a[i]=(a[i-1]+a[i-2])%10007;
            System.out.println(a[n]);
        }
    }
  • 相关阅读:
    node 命令
    nodejs项目搭建
    linux 安装与配置
    GestureDetector
    activity切换效果
    hadoop
    phonegap 自定义插件
    自定义控件-属性自定义
    zxing demo
    select 语句的执行顺序
  • 原文地址:https://www.cnblogs.com/Weixu-Liu/p/9165549.html
Copyright © 2011-2022 走看看