群论

1

一张圆桌周围 n n 把椅子,留下 k k 把,且任意两个椅子不相邻。求本质不同的方案数。如果对于两个方案,其中的一个不能通过旋转或翻转得到另一个,那么称他们本质不同。

根据 burnside 引理,等价类数量等于置换不动点数量的平均数。我们枚举一个旋转的置换,例如旋转了 x x 步,那么在这个置换下就有 gcd(x,n) g c d ( x , n ) 个循环节,长度都为 d=ngcd(x,n) d = n g c d ( x , n ) 。每个循环节状态应该相同。因此如果 d|k d | k ,那么我们就要在所有循环节中选出 num=kd n u m = k d 个,并且不相邻。发现如果相邻的循环节之间连边,那么这张图还是一个环。我们先随便找个地方断开,变成序列上不相邻,最后减去同时选首尾的。因此方案数为 (gcd(x,n)num+1num)(gcd(x,n)num+3num2) ( g c d ( x , n ) − n u m + 1 n u m ) − ( g c d ( x , n ) − n u m + 3 n u m − 2 ) 。 序列上不相邻的做法类似隔板法,先拿出 num1 n u m − 1 个球,最后插回去。

对于环,需要讨论 k k n n 的奇偶。

2

m m 种颜色的珠子。有三种操作:旋转、翻转、转换操作.。转换操作会将所有珠子的颜色编号加1,。特别地, 对于所有颜色编号为 m m 的珠子, 它们的颜色编号会变为1。 如果一个项链A在经过任意的旋转, 翻转, 颜色转换之后变为了项链 B,则称 A 和 B 是等价的。 求有多少个本质不同的项链。

又加了转换操作。一个想法是不改变置换群,统计答案的时候考虑转换。另一种想法是扩大置换群。发现第二种比较靠谱。我们把置换群群扩大到 2nm 2 ∗ n ∗ m 个。例如我们旋转了 i i 步,转换了 d d 次,首先要满足同一循环节前一个颜色比后一个小 d d ,并且 dngcd(i,n)=0 (mod m) d · n g c d ( i , n ) = 0   ( m o d   m ) ,因为转一圈要变回自己的颜色。我们想要计算一下在一个 i i 下有多少合法的 d d 。令 z=ngcd(i,n) z = n g c d ( i , n ) ,化简一下式子:

dnz=0 (mod m)dz=kmd=m(m,z)kz/(m,z)d=0 (mod m(m,z)) d · n z = 0   ( m o d   m ) d z = k m d = m ( m , z ) · k z / ( m , z ) d = 0   ( m o d   m ( m , z ) )

由于 d[1,m] d ∈ [ 1 , m ] ,因此在当前 i i 下有 (m,z) ( m , z ) 个合法的 d d 。所以我们的总方案数长这样:

===i=1nm(i,n)(m,n(n,i))d|nmd(m,nd)j=1n[(j,n)==d]d|nmd(m,nd)j=1n/d[(j,nd)==1]d|nmd(m,nd)φ(nd) ∑ i = 1 n m ( i , n ) · ( m , n ( n , i ) ) = ∑ d | n m d ( m , n d ) ∑ j = 1 n [ ( j , n ) == d ] = ∑ d | n m d ( m , n d ) ∑ j = 1 n / d [ ( j , n d ) == 1 ] = ∑ d | n m d ( m , n d ) φ ( n d )

好像还要写一个 Pollard_Rho…

你可能感兴趣的:(群论)