题目描述
请你求出第n个斐波那契数列的数mod(或%)2^31之后的值。并把它分解质因数。
输入输出格式
输入格式:
n
输出格式:
把第n个斐波那契数列的数分解质因数。
输入输出样例
输入样例#1
5
输出样例#1
5=5
输入样例#2
6
输出样例#2
8=2*2*2
思路
分解质因数模版。
#include <stdio.h>
#include <iostream>
using namespace std;
const long long int mod=1<<31;
long long int f[51]={0,1,1},n;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
long long int i,j;
cin>>n;
for(i=3;i<=n;i++)
{
f[i]=(f[i-1]+f[i-2])%mod;
}
cout<<f[n]<<'=';
j=0;
for(i=2;i<=f[n];i++)
{
while(f[n]%i==0)
{
j++;
if(j==1)
{
cout<<i;
}
else
{
cout<<"*"<<i;
}
f[n]/=i;
}
}
cout<<endl;
return 0;
}