[jzoj 6084] [GDOI2019模擬2019.3.25] 禮物 [luogu 4916] 魔力環 解題報告(莫比烏斯反演+生成函數)
阿新 • • 發佈:2019-03-25
tex math htm clas bottom show get 直接 -m
題目鏈接:
https://jzoj.net/senior/#main/show/6084
https://www.luogu.org/problemnew/show/P4916
題目:
題解:
我們設$f(x)$表示最小循環節長度為x的合法序列數,那麽有$ans=\sum_{d|gcd(n,m)}\frac{1}{d}f(d)$
這是因為最小循環節為d的序列對應的環會被計算d次,比如
- 0101,最小循環節長度為 2(循環節為 01),其對應的環會被統計 2 次(序列 0101 與 1010)
- 0111,最小循環節長度為 4(循環節為 0111),其對應的環會被統計 4 次(序列 0111,1011,1101,1110)
- 1111,最小循環節長度為 1(循環節為 1),其對應的環會被統計 1 次(序列 1111)
直接求$f(x)$並不好求,我們令$g(x)=\sum_{d|x}f(d)$,即$g(x)$表示最小循環節是x的因子的合法序列的個數。那麽可以莫比烏斯反演來求$f(x)$,$f(x)=\sum_{d|x}\mu(d)g(\frac{x}{d})$
[jzoj 6084] [GDOI2019模擬2019.3.25] 禮物 [luogu 4916] 魔力環 解題報告(莫比烏斯反演+生成函數)