标签:file big queue ffffff pac output inf class mes
#include <algorithm> #include <iostream> #include <cstring> #include <cstdio> #include <vector> #include <cmath> #include <queue> #include <deque> #include <cmath> #include <map> using namespace std; typedef long long ll; #define INF 0x7fffffff const double inf=1e20; const int maxn=1e5+10; const int mod=1e9+7; int a[2009]; int main(){ a[0]=a[1]=1; for(int i=2;i<2009;i++){ a[i]=a[i-1]*i; a[i]%=2009; printf("%d %d\n",i,a[i]); } int n; while(scanf("%d",&n)!=EOF){ if(n>=2009)printf("0"); else printf("%d",a[n]); printf("\n"); } return 0; }
对2009做质因子分解发现,2009=7*7*41,所以41!mod2009==0,只用求前40项就好了
#include <algorithm> #include <iostream> #include <cstring> #include <cstdio> #include <vector> #include <cmath> #include <queue> #include <deque> #include <cmath> #include <map> using namespace std; typedef long long ll; #define INF 0x7fffffff const double inf=1e20; const int maxn=1e5+10; const int mod=1e9+7; int a[41]; int main(){ a[0]=a[1]=1; for(int i=2;i<41;i++){ a[i]=a[i-1]*i; a[i]%=2009; } int n; while(scanf("%d",&n)!=EOF){ if(n>=41)printf("0"); else printf("%d",a[n]); printf("\n"); } return 0; }
标签:file big queue ffffff pac output inf class mes
原文地址:https://www.cnblogs.com/wz-archer/p/12495077.html