• BEGIN-4 Fibonacci数列


    资源限制

    时间限制:1.0s 内存限制:256.0MB

    问题描述

    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。

    Code

    Python

    def fibo(n):
        if n == 0 or n == 1:
            return 1
        fn = [0, 1]
        for i in range(n - 1):
            fn[0], fn[1] = fn[1], (fn[0] + fn[1]) % 10007
        return fn[1]
    
    
    print(fibo(int(input())))
    
    
  • 相关阅读:
    VBA trouble
    深入浅出Automation Anywhere
    sqlserver--install/uninstall
    linux遇到的问题
    Java并发编程:线程池的使用(转载)
    java——线程
    关于项目管理工具 maven
    从xml文件取值
    jquery
    小结-9.20
  • 原文地址:https://www.cnblogs.com/AlexKing007/p/12338014.html
Copyright © 2020-2023  润新知