P2626 斐波那契数列(升级版)

Posted Alex丶Baker

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P2626 斐波那契数列(升级版)相关的知识,希望对你有一定的参考价值。

题目背景

大家都知道,斐波那契数列是满足如下性质的一个数列: • f(1) = 1 • f(2) = 1 • f(n) = f(n-1) + f(n-2) (n ≥ 2 且 n 为整数)。

题目描述

请你求出第n个斐波那契数列的数mod(或%)2^31之后的值。并把它分解质因数。

输入输出格式

输入格式:

 

n

 

输出格式:

 

把第n个斐波那契数列的数分解质因数。

 

输入输出样例

输入样例#1:
5
输出样例#1:
5=5
输入样例#2:
6
输出样例#2:
8=2*2*2

说明

n<=48

 

代码不在这QAQ

#include<iostream>
#include<cstdio>
#include<cmath>
#define mod 2147483648
using namespace std;
int n;
int main()
{
    cin>>n;
    double x=sqrt(5.0);
    long long int ans;
    ans=(1.0/x)*(pow((1+x)/2.0,n)-pow((1-x)/2.0,n));
    ans%=mod;
    cout<<ans<<"=";
    long long int i=2;
    while(ans!=1)
    {
        while(ans%i==0)
        {
            if(ans/i!=1)
            {
                ans/=i;
                cout<<i<<"*";
            }
            else{
                ans/=i;
                cout<<i;
                return 0;
            }
        }
        if(ans%i!=0) i++;
    }
    return 0;
}

 

以上是关于P2626 斐波那契数列(升级版)的主要内容,如果未能解决你的问题,请参考以下文章

P2626 斐波那契数列(升级版)

P2626 斐波那契数列(升级版)

洛谷 P2626 斐波那契数列(升级版)

洛谷——P2626 斐波那契数列(升级版)矩阵

[NOIP1997] P2626 斐波那契数列(升级版)

P2626 斐波那契数列(升级版) 洛谷(2626)