noip複習 快速冪

2021-09-27 23:55:45 字數 512 閱讀 7057

最普通的二進位制拆分

#define ll long long

ll qpow(ll a, ll n, ll p)

底數變大了,直接做\(a * a\)會爆longlong,需要用類似快速冪的方法做乘法

#define ll long long

ll mul(ll a, ll n, ll p)

ll qpow(ll a, ll n, ll p)

初看資料範圍,出題人在搞事情。其實只是用了乙個尤拉定理的結論:

\[a^n \equiv a^ \pmod p\ \ \ (a \perp p)\]

\(o(\sqrt)\)算\(\varphi(p)\),n先讀字串然後按快讀的方式處理即可。

\(a, p\)互質的條件去掉了怎麼辦?當\(n \leq \varphi(p)\)時可以直接算,否則用到以下結論:

\[a^n \equiv a^ \pmod p\]

noip複習 快速冪

最普通的二進位制拆分 define ll long long ll qpow ll a,ll n,ll p 底數變大了,直接做 a a 會爆longlong,需要用類似快速冪的方法做乘法 define ll long long ll mul ll a,ll n,ll p ll qpow ll a,l...

複習 快速冪演算法

快速冪基於分治,同底冪數的乘法 a times a a 所以我們可以得到 a a times a 看起來好像沒有錯。不過不要忘了,我們的快速冪貌似不怎麼支援乙個數的小數次冪。所以需要進行討論 a left a times a left 2 mid n right a right rfloor tim...

快速冪 普通快速冪 矩陣快速冪

題意 n個人排隊,f表示女,m表示男,包含子串 fmf 和 fff 的序列為o佇列,否則為e佇列,有多少個序列為e佇列。分析 矩陣快速冪入門題。下面引用巨巨解釋 用f n 表示n個人滿足條件的結果,那麼如果最後乙個人是m的話,那麼前n 1個滿足條件即可,就是f n 1 如果最後乙個是f那麼這個還無法...