pku1286置换群和POLYA定理

来源:互联网 发布:linux安装安卓软件 编辑:程序博客网 时间:2024/06/10 06:19

题目大意,用三种颜色的珠子组成总共有n个珠子的项链,问总共有多少种不同组法。2种项链旋转,翻转后能变为同一种的,看做是相同的

很裸的题。浅谈一下找循环群的方法。

1.旋转 不妨设只能顺时针旋转。那么有不转,转1颗珠子……转n-1颗珠子,假设转i颗珠子,那么有       gcd(n,i)个循环,每个循环的长度都是n/gcd(n,i),这个结论经常用得到;

2.翻转 这个要分奇偶,

   奇数 只能对称轴穿过某颗珠子,循环个数为(n+1)/2,共有n个这样的循环群

   偶数 对称轴过两个对称珠子,循环个数(n+2)/2,共有n/2个这样的循环群

           对称轴过两个相邻珠子的,循环个数n/2,共有n/2个这样的循环群

3.如果看了上面的还不懂建议画图看看

 

 

4.这是老师给我们的讲义上剪切下来的 大概和上面的讲的差不多

1.POLYA定理

GN个对象上的置换群,用M中颜色涂染这N个对象,则不同的染色方案数为:

     LG =( Mλ(g1)+Mλ(g2)++Mλ(gp))/|G|

其中G=g1,g2, gp, λ(gk)为置换gk的轮换的个数。

注意:

l       置换中轮换的个数和轮换的长度求解。

l       置换群中元素的介的求法。

l       优化问题等等。

*旋转:N个点顺时针(或逆时针)旋转i个位置的置换,

轮转个数为gcd(N, i)

*翻转:

   1.当N为偶数时:

      对称轴不过顶点:轮转个数为N/2

对称轴过顶点:轮转个数为N/2+1

   2.当N为奇数时,轮转个数为(N+1/2

http://acm.pku.edu.cn/JudgeOnline/problem?id=1286

原创粉丝点击