zoukankan      html  css  js  c++  java
  • P2626 斐波那契数列(升级版)

    题目背景

    大家都知道,斐波那契数列是满足如下性质的一个数列:

    • f(1) = 1f(1)=1
    • f(2) = 1f(2)=1
    • f(n) = f(n-1) + f(n-2)f(n)=f(n1)+f(n2) (n ≥ 2n2 且 nn 为整数)。

    题目描述

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

    输入输出格式

    输入格式:

    n

    输出格式:

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

    输入输出样例

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

    说明

    n le 48n48

    #include<bits/stdc++.h>
    using namespace std;
    long long f[1005];
    int k[1000];
    void check(int n){
        int i=2;
            for(;i<=f[n];++i){
                if(f[n]%i==0){
                    cout<<i;
                    break;
                }
            }
            f[n]=f[n]/i;
            if(f[n]!=1){
                cout<<"*";
            }
    }
    int main(){
        f[1]=1;
        f[2]=1;
        int n;
        cin>>n;
        for(int i=3;i<=n;++i){
            f[i]=f[i-2]+f[i-1];
        }
        long long mode=pow(2,31);
        f[n]=f[n]%mode;
        cout<<f[n]<<"=";
        while(f[n]!=1){
            check(n);
        }
        
    }
  • 相关阅读:
    C语言I博客作业05
    C语言I博客作业04
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
    学期总结
    C语言I博客作业07
    C语言I博客作业04
    C语言II博客作业04
  • 原文地址:https://www.cnblogs.com/crazily/p/11123118.html
Copyright © 2011-2022 走看看