[學習筆記]置換群


這是群論

置換群是群論的一種:
必須要知道的:

置換群和Burnside引理,Polya定理

 

理解一下

這里置換就是旋轉同構的表示,方案就是“染色方案”

m種置換,假如所有可能的方案,每種同構的方案都算了m次。(每種置換都有一次),那么直接除以m即可。

但是有的方案並沒有被計算m次。例如旋轉同構的11111只計算了1次。

為了都出現m次,保證能直接除法,就把少算的加上,最后除以m

burnside引理的思想就是這樣。

更具體地,我們稱不動點表示一個置換下置換前后不動的方案。

顯然對於每個置換的不動點,那么這個不動點會在總方案中少出現一次(起碼這個置換不會多一次),就要補上1

所以,

本質不同的“染色方案”,就是每個置換下不動點的個數除以置換數。

 

polya定理相當於一個輔助。

對於每個置換下的不動點個數提供了計算方法:

=顏色^環個數

環就是一個連等式。移動到的位置和自身必須相等。

當然,這只是對於顏色可以隨便填的情況可以直接算。

對於不能隨便填的情況,polya定理也給我們提供了思路:每個環每個環相對獨立地考慮。

例題:

Let it Bead

[ACM] POJ 2409 Let it Bead (Polya計數)

基礎題。

置換只有n種旋轉(包括元置換),和翻轉。

對於翻轉,奇偶討論一下環個數即可。

旋轉i次,環個數gcd(n,i),環長都是n/gcd(n,i)

ax=0 mod y 所以ax=ty=lcm(x,y) 所以a=lcm(x,y)/x=y/gcd(x,y)

每個環都相等,所以環個數:gcd(n,i)

統計不動點之和。再除以置換數

 

如果都是這樣的題就沒有意思了

出題人會在置換的枚舉和不動點的計算上設計麻煩。

1.置換的枚舉優化:一些置換本質上是一樣的:環的種類個數都一樣。對於旋轉同構可以枚舉gcd,對於n!的完全置換,可以自然數拆分(n不能太大<=80)

因為本身統計不動點也是和環有關系。環的組合就少了很多

2.不動點的枚舉:一般還是考慮從環入手,環內部的,環之間的有時都要考慮。題目的一些要求會對每個環內顏色的填法,不是非常無腦,就要額外進行特殊處理了。經常用到dp

 

Magic Bracelet

 poj 2888 Magic Bracelet

靈活統計

 

hdu 5868 Different Circle Permutation

上一題的弱化版。

 

[HNOI2008]Cards

[HNOI2008]Cards

 

 SGU - 282

好題。比較靈活運用了burnside引理和polya定理的思想。

 

 

[HNOI2009]圖的同構記數

上題削弱版。

相當於每個邊有兩種顏色。有或者沒有。

 

 

 

配贈福利:

 

二維旋轉同構(旋轉一行或者一列,共n×m種置換)

對於右移i個,下移j個:
環個數n×m/lcm(n/gcd(i,n),m/gcd(j,m))
枚舉a=n/gcd(i,n)和b=m/gcd(j,m)
方案數乘上:phi(a)phi(b)
復雜度:O(約數個數×約數個數)

大概一個環長這樣子:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM