日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

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

BZOJ 1409 Password 矩陣乘法+線性篩

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

題目大意:求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; }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美一区二区免费 | 国产一区高清 | 欧美高潮 | 五月毛片 | 亚洲国产精品99久久久久久久久 | 免费激情网址 | 在线观看免费黄色 | 亚洲精彩视频在线观看 | 久久久久久久久网站 | 成人在线视频一区 | 污视频在线 | 欧美一级大片免费看 | 日本激情一区二区 | 看全黄大色黄大片老人做 | 国产日韩欧美 | 成人久久久久 | 国产精品一区二区三区不卡 | 国产精品成人一区 | 久久精品免费观看 | 国产高清视频在线 | 欧美一级黄色录像 | 综合色婷婷一区二区亚洲欧美国产 | 国产一级毛片一区二区 | 精品日韩一区二区三区 | 亚洲1234区| 91玖玖 | 精品国产乱码久久久久久蜜臀 | 久久aa| 亚洲天堂久久 | 精品日产卡一卡二卡麻豆 | 亚洲四区| 久国久产久精永久网页 | 久久久精品在线 | 国产视频一区在线观看 | 国产麻豆成人传媒免费观看 | 福利视频在线看 | 91久久久久久久久久久久久 | 特黄一级大片 | 国产玖玖 | 精品视频在线一区 | 亚洲成人精品一区二区 |