题解 P2626 【斐波那契数列(升级版)】

· · 题解

按照惯例 先来一个传送门

怎么说,这道题都是一道比较水的题

这道题分为两个部分,求第n个斐波那契数,再将它分解质因数

首先先给求斐波那契数列的核心代码

for(int i=3;i<=n;i++)
    a[i]=a[i-1]+a[i-2];

再给一个分解质因数的核心代码

for(int i=2;i<=s;i++){
    if(s%i==0){
        cout<<i;
        s/=i;
        if(s!=1) cout<<"*";
        i=1;
    }
}

最后给出AC代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int a[1001],n,s;
    a[1]=1;
    a[2]=1;
    cin>>n;
    for(int i=3;i<=n;i++){
        a[i]=a[i-1]+a[i-2];
    }
    s=a[n];
    cout<<a[n]<<"=";
    for(int i=2;i<=s;i++){
        if(s%i==0){
            cout<<i;
            s/=i;
            if(s!=1) cout<<"*";
            i=1;
        }
    }                
    return 0;                       
}

各位看官,如果有用的话就点个赞再走!