[HDU1812] Count the Tetris - polya定理】的更多相关文章

题面 Problem Description 话说就是因为这个游戏,Lele已经变成一个名人,每当他一出现在公共场合,就有无数人找他签名,挑战. 为了防止引起社会的骚动,Lele决定还是乖乖呆在家里. 在家很无聊,Lele可不想像其他人一样每天没事在家数钱玩,于是他就开始数棋盘.他想知道,一个有N×N个格子的正方形棋盘,每个格子可以用C种不同颜色来染色,一共可以得到多少种不同的棋盘.如果一个棋盘,经过任意旋转,反射后变成另一个棋盘,这两个棋盘就是属于同一种棋盘. 比如当N=C=2的时候,有下面六…
转自:http://endlesscount.blog.163.com/blog/static/82119787201221324524202/ Polya定理 首先记Sn为有前n个正整数组成的集合,G为Sn的置换群,C为Sn的着色集.那么我们等于是要求C中有多少种着色方案是不等价的.定义两种着色等价的概念:如果对于在C中的两种着色c1.c2,存在置换f使得f*c1=c2,那么c1和c2就是等价的.要想求不等价着色的个数,我们要先证明一个定理,即:         Burnside定理:设G(c…
对Polya定理的个人认识     我们先来看一道经典题目:     He's Circles(SGU 294)         有一个长度为N的环,上面写着“X”和“E”,问本质不同的环有多少个(不能旋转重复就称之为本质不同) 输入样例:4 输出样例:6 那么要怎么办呢?暴力显然暴不出来…… 我们可以考虑使用置换群. 我们有两种算法: ①Burnside引理: 答案直接为1/|G|*(D(a1)+D(a2)+D(a3)+……+D(as)) 其中D(ak)为在进行置换群置换操作ak下不变的元素的…
小可可在课余的时候受美术老师的委派从事一项漆绘瓷砖的任务.首先把n(n+1)/2块正六边形瓷砖拼成三角形的形状,右图给出了n=3时拼成的“瓷砖三角形”.然后把每一块瓷砖漆成纯白色或者纯黑色,而且每块瓷砖的正.反两面都必须漆成同样的颜色. 有一天小可可突发奇想,觉得有必要试试看这些瓷砖究竟能够漆成多少种本质不同的图案.所谓两种图案本质不同就是其中的一种图案无论如何旋转.或者翻转.或者同时旋转和翻转都不能得到另外一种图案. 旋转是将瓷砖三角形整体顺时针旋转120度或240度. 翻转是将瓷砖三角形整体…
Invoker Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 122768/62768 K (Java/Others)Total Submission(s): 907    Accepted Submission(s): 364 Problem Description On of Vance's favourite hero is Invoker, Kael. As many people knows Kael can contr…
http://www.cnblogs.com/wenruo/p/5304698.html 先看 Polya定理,Burnside引理回忆一下基础知识.总结的很棒. 一个置换就是集合到自身的一个双射,置换群就是元素为置换的群. 再看 Polya入门  涨涨姿势. Burnside定理,在每一种置换群也就是等价群中的数量和除以置换群的数量,即非等价的着色数等于在置换群中的置换作用下保持不变的着色平均数. Polya定理:设 是n个对象的一个置换群, 用m种颜色染图这n个对象,则不同的染色方案数为:…
点我看题目 题意 :给你c种颜色的n个珠子,问你可以组成多少种形式. 思路 :polya定理的应用,与1286差不多一样,代码一改就可以交....POJ 1286题解 #include <stdio.h> #include <iostream> #include <string.h> #include <math.h> #include <algorithm> using namespace std; int gcd(int a,int b) {…
点我看题目 题意 :给你3个颜色的n个珠子,能组成多少不同形式的项链. 思路 :这个题分类就是polya定理,这个定理看起来真的是很麻烦啊T_T.......看了有个人写的不错: Polya定理: (1)设G是p个对象的一个置换群,用k种颜色突然这p个对象,若一种染色方案在群G的作用下变为另一种方案,则这 两个方案当作是同一种方案,这样的不同染色方案数为: : (2)置换及循环节数的计算方法:对于有n个位置的手镯,有n种旋转置换和n种翻转置换.对于旋转置换: c(fi) = gcd(n,i) …
描述 "Let it Bead" company is located upstairs at 700 Cannery Row in Monterey, CA. As you can deduce from the company name, their business is beads. Their PR department found out that customers are interested in buying colored bracelets. However,…
polya的精髓就在与对循环节的寻找,其中常遇到的问题就是项链染色类问题. 当项链旋转时有n种置换,循环节的个数分别是gcd(n, i); 当项链翻转时有n种置换,其中当项链珠子数位奇数时,循环节的个数是n/2+1 当项链珠子数是偶数个时,当翻转线穿过珠子时,循环节个数为n/2+1,否则为n/2; 1.poj 1286: 题目大意:用三种颜色对珠子数不超过24的项链染色,问有多少种染色情况. 这道题是最基本的polya定理考察,只要带入公式即可 #include<iostream> #incl…
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4633 典型的Polya定理: 思路:根据Burnside引理,等价类个数等于所有的置换群中的不动点的个数的平均值,根据Polya定理,不动点的个数等于Km(f),m(f)为置换f的循环节数,因此一次枚举魔方的24中置换,人肉数循环节数即可,注意细节,别数错了. 1.静止不动,(顶点8个循环,边12个循环,面54个循环) 2.通过两个对立的顶点,分别旋转120,240,有4组顶点,(点4个循环,边4个…
参考了http://blog.csdn.net/ACM_cxlove?viewmode=contents           by---cxlove 的模板 对于每一种染色,都有一个等价群,例如旋转,翻转等.我们将每一种变换转换成一个置换群,通过置换群得到的都是等价的染色方案 最终我们要求的是非等价的染色方案数. 在Burnside定理中给出,在每一种置换群也就是等价群中的数量和除以置换群的数量,即非等价的着色数等于在置换群中的置换作用下保持不变的着色平均数. 我们以POJ 2409 Let i…
UVA10294 Arif in Dhaka (群论,Polya定理) 题意 : 给你一个长为\(n\)的项链和手镯,每个珠子有\(m\)种颜色. 两个手镯定义为相同,即它们通过翻转和旋转得到一样的手镯. 两个项链定义为相同,即它们只能通过旋转得到一样的项链. 求出有多少种本质不同的项链和手镯. \((1 \le n \le 50, 1 \le m \le 10)\) 题解 : (参考了一下这篇大佬博客) 大白书上的原题,一个裸的Polya定理(逃 Polya定理 : \[L=\frac{1}{…
Description 小春现在很清闲,面对书桌上的N张牌,他决定给每张染色,目前小春只有3种颜色:红色,蓝色,绿色.他询问Sun有多少种染色方案,Sun很快就给出了答案.进一步,小春要求染出Sr张红色,Sb张蓝色,Sg张绝色.他又询问有多少种方案,Sun想了一下,又给出了正确答案. 最后小春发明了M种不同的洗牌法,这里他又问Sun有多少种不同的染色方案.两种染色方法相同当且仅当其中一种可以通过任意的洗牌法(即可以使用多种洗牌法,而每种方法可以使用多次)洗成另一种.Sun发现这个问题有点难度,决…
题目大意 求两两互不同构的含n个点的简单图有多少种. 简单图是关联一对顶点的无向边不多于一条的不含自环的图. a图与b图被认为是同构的是指a图的顶点经过一定的重新标号以后,a图的顶点集和边集能完全与b图一一对应. 题解 这个题是学习了Polya定理和群论以后的练手题,但是推了好久并没有推出来....真的是太难辣... 首先我先说一下我错误的想法: 很容易就把这个题转化成了给\(K_n\)的完全图上的边进行二着色的问题,然后,由于在组合数学课程中经常接触到多边形着色,所以我就把这个题错误的转化成了…
题意 如果一张无向完全图(完全图就是任意两个不同的顶点之间有且仅有一条边相连)的每条边都被染成了一种颜色,我们就称这种图为有色图. 如果两张有色图有相同数量的顶点,而且经过某种顶点编号的重排,能够使得两张图对应的边的颜色是一样的,我们就称这两张有色图是同构的. 对于计算所有顶点数为 \(n\) ,颜色种类不超过 \(m\) 的图,最多有几张是两两不同构的图. 数据范围 \(n \le 53, 1 \le m \le 1000\) 题解 神仙题qwq 我们考虑对于点置换与其对应的边置换的关系: 对…
传送门 思路 很明显的一个思路:先搞出有多少种珠子,再求有多少种项链. 珠子 考虑这个式子: \[ S3=\sum_{i=1}^a \sum_{j=1}^a\sum_{k=1}^a [\gcd(i,j,k)==1] \] 显然可以莫比乌斯反演一波,但这个是对的吗? 当有两个数字相同时只被算了3遍,而三个都相同的只被算了一遍. \[ S2=\sum_{i=1}^a\sum_{j=1}^a [\gcd(i,j)==1] \] 显然有\(S1=1\),那么就会得到最终答案: \[ ans=\frac…
最近,研究了两天的Burnside引理和Polya定理之间的联系,百思不得其解,然后直到遇到下面的问题: 对颜色限制的染色 例:对正五边形的三个顶点着红色,对其余的两个顶点着蓝色,问有多少种非等价的着色? 其中置换的方法有旋转 \(0^{\circ}, 72^{\circ}, 144^{\circ}, 216^{\circ}, 288^{\circ}\), 穿过一个点做对称轴进行翻转. Burnside引理的证明 那么,在解决这个问题之间,我们首先要定义和证明一些东西: 在集合\(X\)的置换群…
感觉这两个东西好鬼畜= = ,考场上出了肯定不会qwq.不过还是学一下吧用来装逼也是极好的 群的定义 与下文知识无关.. 给出一个集合$G = \{a, b, c, \dots \}$和集合上的二元运算"$*$",并满足 (1).封闭性:$\forall a, b \in G, \exists c \in G, a * b = c$ (2).结合律:$\forall a, b, c \in G, (a * b) * c = a * (b * c)$ (3).单位元:$\exists e…
原文链接www.cnblogs.com/zhouzhendong/p/Burnside-Polya.html 问题模型 有一个长度为 $n$ 的序列,序列中的每一个元素有 $m$ 种取值. 如果两个序列循环同构,那么我们称这两个序列等价. 求两两不等价的序列个数. Burnside引理 假设有若干个置换 $P_1,P_2,\cdots$ ,设由这些置换生成的置换群为 $Q$ .如果序列 A 可以通过一个 $Q$ 中的置换变成序列 B,那么我们认为 A 和 B 等价. 对于一个置换 $P$ ,如果…
题目描述 小春现在很清闲,面对书桌上的N张牌,他决定给每张染色,目前小春只有3种颜色:红色,蓝色,绿色.他询问Sun有多少种染色方案,Sun很快就给出了答案.进一步,小春要求染出Sr张红色,Sb张蓝色,Sg张绝色.他又询问有多少种方案,Sun想了一下,又给出了正确答案. 最后小春发明了M种不同的洗牌法,这里他又问Sun有多少种不同的染色方案.两种染色方法相同当且仅当其中一种可以通过任意的洗牌法(即可以使用多种洗牌法,而每种方法可以使用多次)洗成另一种.Sun发现这个问题有点难度,决定交给你,答案…
题目描述 给你一个字符串\(s\),问你有多少个串是最小表示串且字典序\(\leq s\) \(|s|\leq 1000\) 题解 先把\(s\)变成比\(s\)小的最大的最小表示串.方法是从后枚举每一个字符,如果这个字符不是'a',就把这个字符变成这个字符的前驱,并把后面所有字符字符变成'z',然后判断是不是最小表示串. 可以用kmp去判断.如果\(\exists i,s_{i+1}>s_{fail_i+1}\),那么这个串就不是最小表示串. 运用polya定理,把问题转化为求有多少个长度为\…
这题和POJ-1286一样 题意: 给出t种颜色的n颗珠子 (每种颜色的珠子个数无限制,但总数必须是n), 求能制作出项链和手镯的个数 注意手镯可以翻转和旋转  而 项练只能旋转 解析: 注意Polya定理: 等价类的个数等于所有的置换f的km(f)的平均数 先考虑旋转,一共有n种情况,旋转1颗珠子构成循环,2颗,3颗·····n颗,那么对于旋转i颗珠子有gcd(i,n)个循环,那么根据Polya定理  置换的不动点的个数为 a = sum(tgcd(i, n)); 为什么又gcd(i, n)个…
Beads of red, blue or green colors are connected together into a circular necklace of n beads ( n < 24 ). If the repetitions that are produced by rotation around the center of the circular necklace or reflection to the axis of symmetry are all neglec…
思路 polya定理的模板题,但是还要加一些优化 题目的答案就是 \[ \frac{\sum_{i=1}^n n^{gcd(i,n)}}{n} \] 考虑上方的式子怎么求 因为\(gcd(i,n)\)肯定有很多重复,枚举\(gcd(i,n)\),因为\(gcd(i,n)\)是\(n\)的约数,所以枚举约数 \[ \begin{align}&\sum_{d|n}^nn^d\sum_{k=1}^n[gcd(n,k)=d]\\=&\sum_{d|n}^nn^d\sum_{k=1}^{\lfloo…
题意:给定 n 和 m 表示要制作一个项链和手镯,项链和手镯的区别就是手镯旋转和翻转都是相同的,而项链旋转都是相同的,而翻转是不同的,问你使用 n 个珠子和 m 种颜色可以制作多少种项链和手镯. 析:一个很明显的 Polya 定理,先考虑旋转,如果逆时针旋转 i 个珠子,那么 0 i 2i 3i ... 是一个循环,这样的话就有 gcd(i, n) 个循环. 对于翻转,要考虑是奇偶,如果是奇数,肯定是要过一个珠子的,所以就一共有 n 个相同的,对于每一个会形成 n/2 个长度为 2 个的循环,和…
参考:刘汝佳<算法竞赛入门经典训练指南> 感觉是非常远古的东西了,几乎从来没有看到过需要用这个的题,还是学一发以防翻车. 置换:排列的一一映射.置换乘法相当于函数复合.满足结合律,不满足交换律. 置换的循环分解:即将置换看成一张有向图,分解成若干循环.循环的数量称为循环节. 以置换集合来描述等价关系.如果存在一个置换将一个方案映射到另一个方案,则这两个方案等价.置换集合应当构成置换群. 不动点:方案s经过置换f不变,则s为f的不动点. Burnside引理:等价类数量=所有置换的不动点数量的平…
[BZOJ1488][HNOI2009]图的同构(Burside引理,Polya定理) 题面 BZOJ 洛谷 题解 求本质不同的方案数,很明显就是群论这套理论了. 置换一共有\(n!\)个,考虑如何对于任意一个置换求不动点数量. 首先边存在或者不存在太麻烦了,我们假装所有边都已经存在,出现过的边和不存在的边用两种不同的颜色染色即可.这样子我们就假装所有的边都出现了,也就是一个完全图. 显然循环是对于点而论的,但是这题同构是对于边而论的.那么我们对于一个点的循环,考虑它的两个顶点.这两个顶点只有两…
定义简化版: 置换,就是一个1~n的排列,是一个1~n排列对1~n的映射 置换群,所有的置换的集合. 经常会遇到求本质不同的构造,如旋转不同构,翻转交换不同构等. 不动点:一个置换中,置换后和置换前没有区别的排列 Burnside引理:本质不同的方案数=每个置换下不动点的个数÷置换总数(一个平均值) Polya定理:一个置换下不动点的个数=颜色^环个数.(辅助Burnside引理,防止枚举不动点复杂度过高) 这篇文章写得很详细了(具体的在此不说了): Burnside引理与Polya定理 **特…
由于有很多本质相同的重复置换,我们先枚举各种长度的点循环分别有多少个,这个暴搜的复杂度不大,n=53时也只有3e5左右.对于每种搜索方案可以轻易求出它所代表的置换具体有多少个. 但我们搜索的是点置换组成的循环,要求的是边置换组成的循环.现在问题就是对于每种搜索方案,求出有多少个边循环. 首先,如果一条边的两个端点属于同一点循环,另一条边的端点属于两个不同点循环,那么显然这两条边不可能属于同一边循环. 对于一个长度为L的点循环,观察发现所有两个端点都属于这个点循环的边构成了L/2个边循环. 对于两…