1. 程式人生 > >多校第七場小知識~

多校第七場小知識~

keyword 函數 .com ase jpg long 其他 多校 amp

還是不會做題,沒關系,那就先了解一些相關知識就好~

1010

技術分享圖片

.技術分享圖片

矩陣快速冪+分塊

矩陣快速冪,因為|fn-1 fn-2|*矩陣A=|c*fn-2+d*fn-1|;

分塊,因為p/n隨著n而變化,所以需要按照變化點來分成不同塊,這樣復雜度才可以降到根號p;

分塊:設 x=p/i,若x=p/i,i=p/x=p/(p/i),即此時i為使得p/i值不變最大的那個i。。。所以按照i=p/(p/i)+1進行分塊即可;

快速冪:以求a的b次方來介紹,技術分享圖片=技術分享圖片 11的二進制為1101;最終復雜度為log?N;

模板:int pow(int a,int b){

int r=1,base=a; while(b){
if(b&1) r*=base; base*=base; b>>=1; } return r; } 矩陣快速冪:https://blog.csdn.net/wust_zzwh/article/details/52058209簡直不要更好的博文~ 根據遞推式構造矩陣,理解&註意代碼細節,其他的交給模板哈哈~ mod1e9+7: const long long mod=1e9+7; 每一次模,%mod即可; 1009 倍增,樹的分塊,寫樹 1005 歐拉函數,莫比烏斯反演。。。

多校第七場小知識~