我日啊..被cls的计数题虐得欲仙欲死...根本不会计数QAQ...

不懂数学啊...

前置技能

群是二元组\((G,*)\),满足

  • \(*:(G,G)\rightarrow G\)
  • \(\exists e\in G, \forall x\in G, x*e=x=e*x, \mathtt{(单位元)}\)
  • \(\forall x\in G, \exists y\in G, x*y=e, \mathtt{记}y=x^{-1}, \mathtt{(存在逆元)}\)
  • \(\forall x,y,z\in G, (x*y)*z=x*(y*z), \mathtt{(结合律)}\)

记\(a*b\)为\(ab\).

置换

一个作用在集合\(G\)上的置换群\((S_G,\circ)\)是\(s: G\rightarrow G\)(\(s\)是一一对应,称为作用在\(G\)上的置换)的集合,其中\(\circ\)是复合操作,即\(x,y\in S_G,t\in G, (x\circ y)(t)=y(x(t))\).

循环

循环是一类特殊的置换, 表示为\(f=(a_1a_2\cdots a_n)\),表示\(f(x)=\begin{cases}a_{(i+1)\bmod n} &,\mathtt{if}~x=a_i\\x &,\mathtt{whatever~else}\end{cases}\),记\(f\)为长度为\(n\)的置换,\(l(f)=n\)

显然一个置换可以分解为一堆不相交循环对\(\circ\)的乘积,只需要考察集合里的元素不断作用置换\(p\)回到原点时经过的元素.这个过程称为置换的分解,分解后的集合记为\(\alpha(p)\)(我也不知道可以用什么符号干脆就用个\(\alpha\)好孩子们别学我= =).

记\(\beta_k(p)=\sum\limits_{i\in \alpha(p)}[l(i)=k]\)(即p的分解中长度为\(k\)的循环的个数).

Pólya定理

对于set(\(X\)),group(\(G\subseteq S_X,\circ\)),用\(m\)种颜色给\(X\)染色,求方案数.

等价性: 若两个染色\(x,y\)可以通过\(G\)中的一个置换的作用变为相等,这两个置换就是等价的.

相信学习Pólya的大家都见过这个式子:

\[\mathtt{ans}=\frac{1}{\mid G\mid}\sum_{g\in G}m^{\mid \alpha(g)\mid}\]

但是这个式子其实是一个简化版的Pólya定理= =.它太弱了,甚至不能处理颜色个数有不同的情况..

(待补.)

Pólya计数定理的更多相关文章

  1. 【等价的穿越】Burnside引理&Pólya计数法

    Problem 起源: SGU 294 He's Circle 遗憾的是,被吃了. Poj有道类似的: Mission 一个长度为n(1≤n≤24)的环由0,1,2组成,求有多少本质不同的环. 实际上 ...

  2. 组合数学之Pólya计数理论

    1 群 群$(G, cdot)$: 闭合, 结合律, 幺元, 逆 1.1 置换群 置换为双射$pi:[n]to [n]$, 置换之间的操作符 $cdot$ 定义为函数的复合, 即$(pi cdot s ...

  3. UVa 10294 (Pólya计数) Arif in Dhaka (First Love Part 2)

    Burnside定理:若一个着色方案s经过置换f后不变,称s为f的不动点,将置换f的不动点的数目记作C(f).等价类的数目等于所有C(f)的平均值. 一个项链,一个手镯,区别在于一个能翻转一个不能,用 ...

  4. polya计数定理在ACM-icpc中的应用

    [数学公式] PG(x1,x2,...,xn) = 1/|G| * ∑π∈G x1^b1 * x2^b2*...*bn^bn   其中π是1^b12^b2...n^bn型轮换 然后一般染色情况下x1= ...

  5. 组合数学(Pólya计数原理):UvaOJ 10601 Cubes

    Cubes You are given 12 rods of equal length. Each of them is colored in certain color. Your task is ...

  6. 置换群 Burnside引理 Pólya定理(Polya)

    置换群 设\(N\)表示组合方案集合.如用两种颜色染四个格子,则\(N=\{\{0,0,0,0\},\{0,0,0,1\},\{0,0,1,0\},...,\{1,1,1,1\}\}\),\(|N|= ...

  7. 数学:Burnside引理与Pólya定理

    这个计数定理在考虑对称的计数中非常有用 先给出这个定理的描述,虽然看不太懂: 在一个置换群G={a1,a2,a3……ak}中,把每个置换都写成不相交循环的乘积. 设C1(ak)是在置换ak的作用下不动 ...

  8. [spoj104][Highways] (生成树计数+矩阵树定理+高斯消元)

    In some countries building highways takes a lot of time... Maybe that's because there are many possi ...

  9. bzoj 1004 Cards 组合计数

    这道题考察的是组合计数(用Burnside,当然也可以认为是Polya的变形,毕竟Polya是Burnside推导出来的). 这一类问题的本质是计算置换群(A,P)中不动点个数!(所谓不动点,是一个二 ...

随机推荐

  1. 第3章 基本概念(第一部分:Js语法)

    本章就JavaScript常用功能而言阐述ECMAScript“伪语言”所描述的概念. 一. 语法 1.大小写规则 js语言本身对大小写不敏感,但是一切变量.函数.操作符都对大小写敏感. 2.注释格式 ...

  2. Windows Platform Predefined Macros

    https://msdn.microsoft.com/en-us/library/b0084kay.aspx

  3. php生成excle

    方法一: 新建index.php,代码如下 <?php header("Content-type:application/vnd.ms-excel"); header(&qu ...

  4. JAVA个人知识总结

    1.一个.java文件中只能有一个public类,且必须跟文件名相同,其他类不能以public开头. 2.继承: 子类继承父类的属性和方法. 3.继承和组合: 继承是对“是一种”(is-a)关系建模, ...

  5. jQuery checkbox 所有 全选、全不选、是否选中等

    下面是网络收集: jquery判断checked的三种方法:.attr('checked):   //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或fals ...

  6. singleton和prototype

    public class testScope { @Test public void test() { //默任singleton ApplicationContext ctx= new ClassP ...

  7. php/js互传cookie中文乱码的问题

    问题发现: 过去好好的,今天突然网页出现了问题. 在猎豹和IE都出现问题,在360浏览器就正常. 经过排错,最终发现:  js存储cookie,php读取的时候成了乱码 . 问题分析: 这是因为文字编 ...

  8. eclipse-4.4.2安装Groovy插件(其他版本eclipse可参考)

    步骤 : 1.启动eclipse,点击help -> Install New Software... 在弹出的窗口中点击:Add... Groovy插件的地址:http://dist.sprin ...

  9. Java中符号位扩展

    第一个例子: byte b=-100;b在内存中是以补码的形式存贮的:1001 1100 如果执行char c=(char)b;如3楼企鹅先生所说:b要先变为int,这时增加的位全要用b的符号位填充( ...

  10. 来聊聊apply和call

    今天在群里讨论的时候,看到有人问apply怎么使用,突然想起自己刚接触这个方法的时候,也是一样的摸不着头脑. 记得当时上网看了很多讲解,可实际用的时候还是感觉有些蒙蒙哒orz.... 后来想一想,也许 ...