多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > BZOJ 1409 Password 矩陣乘法+線性篩

BZOJ 1409 Password 矩陣乘法+線性篩

來源:程序員人生   發布時間:2015-03-25 11:36:42 閱讀次數:3792次

題目大意:求p^F[n] mod q 其中F是斐波那契數列,p是質數,q<p

由于pq互質因此可以套用歐拉定理

然后就是矩乘求斐波那契的事情了- -

垃圾題卡O(√q) 求Phi的時候要枚舉質數 不能1個1個枚舉

#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const long long empty[2][2]={{0,0},{0,0}}; const long long I[2][2]={{1,0},{0,1}}; const long long trans[2][2]={{0,1},{1,1}}; int n,p,q,mod; int prime[100100],tot; bool not_prime[100100]; namespace Matrix_Multiplication{ struct Matrix{ long long xx[2][2]; Matrix(const long long _[2][2]) { memcpy(xx,_,sizeof xx); } long long* operator [] (int x) { return xx[x]; } friend void operator *= (Matrix &x,Matrix y) { int i,j,k; Matrix z(empty); for(i=0;i<2;i++) for(j=0;j<2;j++) for(k=0;k<2;k++) (z[i][j]+=x[i][k]*y[k][j])%=mod; x=z; } }; Matrix Quick_Power(Matrix x,int y) { Matrix re(I); while(y) { if(y&1) re*=x; x*=x; y>>=1; } return re; } } void Linear_Shaker() { int i,j; for(i=2;i<=100000;i++) { if(!not_prime[i]) prime[++tot]=i; for(j=1;prime[j]*i<=100000;j++) { not_prime[prime[j]*i]=true; if(i%prime[j]==0) break; } } } int Phi(int x) { int i,re=x; for(i=1;(long long)prime[i]*prime[i]<=x;i++) if(x%prime[i]==0) { re/=prime[i];re*=prime[i]⑴; while(x%prime[i]==0) x/=prime[i]; } if(x!=1) re/=x,re*=x⑴; return re; } int Quick_Power(long long x,int y) { long long re=1; while(y) { if(y&1) (re*=x)%=q; (x*=x)%=q; y>>=1; } return re; } int main() { using namespace Matrix_Multiplication; int T; Linear_Shaker(); for(cin>>T>>p;T;T--) { scanf("%d%d",&n,&q); mod=Phi(q); int ans=Quick_Power(trans,n)[1][0]; printf("%d ",(int)Quick_Power(p,ans)%q); } return 0; }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 日本free护士videosxxxx动漫 | 国亚洲欧美日韩精品 | 性欧美18videofreetubehd黑人 | 亚洲爽视频 | 日本中文字幕在线看 | 老司机免费福利视频无毒午夜 | 成人 在线欧美亚洲 | 欧美三级视频在线观看 | 亚洲最新永久观看在线 | 久久久久久国产精品免费免费 | s级毛片| 一本色道久久爱88a 一本视频在线 | 亚洲美女高清aⅴ视频免费 亚洲美女激情视频 | www.中文字幕在线观看 | 精品一区二区三区高清免费观看 | 免费综合网 | 我要看日本黄色片 | 一级做a爰全过程免费视频毛片 | 亚洲欧美日韩精品 | 欧美毛片网站 | 暴力欧美娇小 videos | 青青国产成人精品视频 | 国产精品第一页在线 | 国产毛片视频网站 | free hd xxxx video喷水| 亚洲精品中文字幕一区在线 | ww亚洲ww亚在线观看 | haodiaose在线精品免费视频 | 国产91久久久久久久免费 | 欧美一级性视频 | 国产精品成人久久久久 | 久久91精品国产91久 | 男女自偷自拍视频免费观看篇 | 周妍希国产福利在线观看 | 成人中文字幕在线高清 | 色阁在线 | 丁香网五月| 久久国产欧美另类久久久 | 高清一级片 | 国产综合精品一区二区 | 国产尤物|