以前只是直接用了这两个式子。。今天才仔细看了证明。。【网上的真是难懂啊

我看的几个博客地址(各有优缺): 其实如果能懂的话 只看博客B就可以了

首先是一些置换群方面的定义和性质  博客A:http://blog.csdn.net/xym_CSDN/article/details/53456447

然后是burnside的证明                  博客B:http://blog.csdn.net/gengmingrui/article/details/50564027

还有两个定理的式子和举例             博客C:http://blog.csdn.net/liangzhaoyang1/article/details/72639208

但是对于博客B,我看的时候遇到了几个问题

1、 设G={a1,a2,…ag}是目标集[1,n]上的置换群。

  这里涉及到两个集合 一个是置换群,一个是目标集

  目标集是一个状态集合,  在OI中举个例子 {

    m个格子黑白染色, 状态数有2^m种, 每一种都是目标集中的一个元素,所以[1,n]实际上是[1,2^m];

    而置换就可以理解为 两个状态之间的有向边。  比如1001这种染色状态,经过(1 2 3)(4)的置换后,变成0101

  }

2、 c1(ak)是在置换ak的作用下不动点的个数,也就是长度为1的循环的个数(其实就是被置换ak置换过后位置不变的元素个数)

  因为这句话,我之前一直误以为是不动点是:  比如置换ak=(1 2 3)(4)中的那个4 。

  然而实际上。比如1001这种染色状态,经过置换ak=(1 4)(2 3)的置换后,变成1001 ,所以‘1001’这个元素是置换ak的一个不动点。

3、 轨道大小*稳定化子数=变换个数

  这个的证明在博客A的最后有

贴一下来自博客C的式子:

Burnside引理: 
对于一个置换f,若一个染色方案s经过置换后不变,称s为f的不动点。将f的不动点数目记为C(f),则可以证明等价类数目为所有C(f)的平均值。 
百度百科的定义: 
设G=a1,a2,…ag是目标集[1,n]上的置换群。每个置换都写成不相交循环的乘积。c1(ak)是在置换ak的作用下不动点的个数。通过上述置换的变换操作后可以相等的元素属于同一个等价类。若G将[1,n]划分成l个等价类,则: 

Polya定理 :
polya定理实际上是burnside引理的具体化,提供了计算不动点的具体方法。 
假设一个置换有k个循环,易知每个循环对应的所有位置颜色需一致,而任意两个循环之间选什么颜色互不影响。因此,如果有m种可选颜色,则该置换对应的不动点个数为mk

用其替换burnside引理中的C(f),即C(f)=mk。得到等价类数目为:

其中|F|表示置换的数目,ki表示第i个置换包含的循环个数。

Burnside&Polya的更多相关文章

  1. POJ burnside&&polya整理练习

    POJ 2409 Let it Bead 这题就是polya公式的直接套用,唯一麻烦的是置换群的种类数,由于可以翻转,所以除了要加上pow(c,gcd(s,i))这些平面旋转的置换群,还要加上翻转的. ...

  2. burnside+polya 整理

    先定义几个含义和符号:起始状态/方法/位置/元素/:以染色为例,起始状态是所有的染色方案,方法是以起始状态所有染色方案为基准转变为新的染色情景的操作(如旋转),位置则必须是没有任何染色效果的抽象空间, ...

  3. Burnside&Polya总结

    这里就算是一个小总结吧- 附参考的网址: http://blog.sina.com.cn/s/blog_6a46cc3f0100s2qf.html http://www.cnblogs.com/han ...

  4. Burnside&Polya总结

    这里就算是一个小总结吧- 附参考的网址: http://blog.sina.com.cn/s/blog_6a46cc3f0100s2qf.html http://www.cnblogs.com/han ...

  5. bzoj1004 [HNOI2008]Cards【Burnside/Polya】

    传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1004 一道好题,但并不是好在融合了三个“考点”(计数,背包dp,逆元),其实背包dp以及求逆 ...

  6. 等价类计数:Burnside引理 & Polya定理

    提示: 本文并非严谨的数学分析,有很多地方是自己瞎口胡的,仅供参考.有错误请不吝指出 :p 1. 群 1.1 群的概念 群 \((S,\circ)\) 是一个元素集合 \(S\) 和一种二元运算 $ ...

  7. 【BZOJ】【1004】【HNOI2008】Cards

    Burnside/Polya+背包DP 这道题目是等价类计数裸题吧……>_> 题解:http://m.blog.csdn.net/blog/njlcazl_11109/8316340 啊其 ...

  8. 2017-12 CDQZ集训(已完结)

    从联赛活了下来(虽然分数倒一……),接下来要去CDQZ集训啦…… DAY -2 2017-12-16 被老师安排负责一部分同学的住宿以及安排…… 抓紧时间继续学习,LCT真好玩啊真好玩…… 晚上放假了 ...

  9. 各种注意事项(还有c++的一些操作)

    转c++时间: 2017年8月9号 1.记得打头文件 2.=与==的区别(赋值|比较) 3.各种运算符的比较级(与Pascal不同),主要是==与位运算 *4.在OJ上scanf和printf时间优于 ...

随机推荐

  1. 【思维+贪心】codeforces Game of the Rows

    http://codeforces.com/contest/839/problem/B [题意] 给定n组人,告诉每组人的人数,这些人要在飞机上坐座位 飞机上座位的分布看图可以知道,12  3456 ...

  2. 虫食算(codevs 1064)

    题目描述 Description 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母.来看一个简单的例子: 43#9865#045    +    8468#6 ...

  3. WordPress升级错误:class-wp-filesystem-direct.php on line 122

    错误描述:WordPress在后台进行版本升级时,出错,之后进入前台或者后台,都无法访问进入,错误信息如下:Warning: copy(/home/xxx/public_html/wordpress/ ...

  4. 2017多校Round3(hdu6056~hdu6066)

    补题进度:7/11 1001 待填坑 1002 待填坑 1003(set) 题意: 给定长度为n(n<=5e5)的数组(是n的一个排列)和一个整数k(k<=80),f[l,r]定义为区间[ ...

  5. java-过滤器(Filter)

    在javaweb开发中,项目中都会包含一些过滤器(Filter),主要用于web服务器对资源的管理控制,如静态资源文件.jsp页面访问等.我们可以使用过滤器实现一些特殊的功能,如常见的过滤敏感词汇(替 ...

  6. ABP每次生成前都执行bundle设置

    ABP项目每次编译mvc项目时都会执行bundle,比较耗时. 可以在项目文件(*.csproj)中发现设置了每前生成前执行的命令 <Target Name="PreBuild&quo ...

  7. eclipse提速03 - 禁用动画

  8. 一句话从MySQL导出CSV文件

    mysql -h <host> -u<user> -p<passport> crm -e "select ....." | csvcut -t ...

  9. oracle rac 安装错误整理。

    今天是2014.05.26,离别N久的博客今天继续使用. 近期一直忙着离职.入职另外加上家的网一直没有交费,弄的自己開始不那么安稳.学习就是须要一种心情平静.内心稳妥的去进行. 因换笔记本,特须要又一 ...

  10. simple-todo: 一个简易的 todo 程序 - django版

    今天无意间看到  simple-todo: 一个简易的 todo 程序 - web.py 中文教程 ,然后发现竟然有好多的版本 http://simple-is-better.com/news/tag ...