环计数问题
Statement
假设 n n n个元组成一个环, 每个元都是 1 , … , r 1,\dots,r 1,…,r中的一个数, 两个环是不同的当且仅当它们不能通过旋转使得两个环对应的每个元素都相等.
Solution
如果我们现在先考虑链的情况, 那么一个长度为 n n n的链, 每个元素是 1 , … , r 1,\dots,r 1,…,r中的一个数的方案数为 r n r^n rn.
我们设 f x f_x fx表示最小循环节为 x x x的环的方案数. 则我们可以得到如下性质.
- 性质1:
r
n
=
∑
d
∣
n
d
f
(
d
)
r^n=\sum\limits_{d|n}df(d)
rn=d∣n∑df(d).
- 上式的组合意义就是, 我不妨考虑 n n n元环是存在循环节的, 那循环节长度必然得是 n n n的因子. 也就是 a 1 , a 2 , … , a d , a d + 1 , … , n a_1,a_2,\dots,a_d,a_{d+1},\dots,n a1,a2,…,ad,ad+1,…,n循环节长度为 d d d则有 a 1 = a d + 1 , a 2 = a d + 2 , … a_1=a_{d+1},a_2=a_{d+2},\dots a1=ad+1,a2=ad+2,…. 由于循环节长度为 d d d那我们破环为链一共会有 d d d中本质不同的链.
- 根据莫比乌斯反演可得 n f ( n ) = ∑ d ∣ n μ ( n d ) r d nf(n)=\sum\limits_{d|n}\mu(\frac{n}{d})r^d nf(n)=d∣n∑μ(dn)rd. 得 f ( n ) = 1 n ∑ d ∣ n μ ( n d ) r d f(n)=\frac{1}{n}\sum\limits_{d|n}\mu(\frac{n}{d})r^d f(n)=n1d∣n∑μ(dn)rd.
则 A n s = ∑ d ∣ n f ( n ) Ans=\sum\limits_{d|n}f(n) Ans=d∣n∑f(n).