[洛谷P2626]斐波那契数列(升级版)
题目大意:请你求出第$n$个斐波那契数列的数$mod 2^{31}$之后的值。并把它分解质因数。
题解:乱搞
卡点:1.忘记取模
C++ Code:
#include<cstdio> #include<cmath> using namespace std; long long n,f[50]={1,1,1,0}; int main(){ scanf("%lld",&n); for (int i=3;i<=n;i++)f[i]=(f[i-1]+f[i-2])%2147483648; long long i=2,tmp=f[n]; printf("%lld=",f[n]); while (1){ while (tmp%i==0){ if (tmp!=f[n])putchar('*'); printf("%lld",i); tmp=tmp/i; } i++; double o=tmp; if (i>((long long)(sqrt(o))+1))break; } if (tmp!=1){ if (tmp!=f[n])putchar('*'); printf("%lld",tmp); } return 0; }