(模板)快速幂+快速乘

树下

2018-11-01 15:37:08

Personal

#### 快速幂 ```cpp long long ksm(long long base,long long m,long long p) { long long ans=1; while(m) { if(m&1)ans=ksc(ans,base,p); base=ksc(base,base,p); m>>=1; } return ans; } ``` #### 快速乘 ```cpp long long ksc(long long a,long long b,long long p) { long long ans=0; while(b) { if(b&1)ans=(ans+a)%p; a=(a<<1)%p; b>>=1; } return ans; } ```