这题数据略水

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

结果自测(通过各种数据点现实的“expected......”)感觉没错啊 附上代码 ```cpp #include<cstdio> #include<iostream> #include<bits/stdc++.h> #include<cstring> #include<cmath> using namespace std; long long k=1,u=1,n; long long p=1; long long a[100001],b[100001]; long long o=1; long long many(int a) { k+=u%p; long long t=k%p; k=u%p; u=t%p; if(a==n) { return u; } return many(a+1); } int prime(int a) { for(int i=2;i<=sqrt(a);++i) if(a%i==0) return 0; return 1; } void pzx(long long y) { long long r=0,g=y,f=0; for(long long i=2;i<=sqrt(g);++i) { while(y%i==0&&prime(i)==1) { y/=i; a[o]=i; b[o]++; r=1; f=1; } if(f==1) o++; f=0; } if(y!=1) { a[o]=y; b[o]++; } else o--; for(int i=1;i<=o-1;++i) for(int j=1;j<=b[i];++j) printf("%I64d*",a[i]); for(int i=1;i<=b[o]-1;++i) printf("%I64d*",a[o]); printf("%I64d",a[o]); } int main() { scanf("%d",&n); if(n==1) { printf("1=1"); return 0; } if(n==2) { printf("1=1"); return 0; } for(int i=1;i<=31;++i) p*=2; long long h=many(3); printf("%I64d=",h); pzx(h); return 0; } ```
by xxfdzl @ 2017-11-03 14:27:46


我**复制一个题解回来** ------------ ------------ 弄几组数据,结果输入47,48的时候炸了
by 亚索s @ 2018-07-16 20:30:44


|