组合数学--Polya 原理及典型应用
关于Polya原理的应用经典实例:
问题:用两种颜色去染排成一个圈的6个棋子,如果通过旋转得到只算作一种。问有多少种染色状态。
解:先将棋子表上号:
1
6 2
5 3
4
那么把所有通过旋转m(m大于等于0小于等于5)步的写出来:
1 6 5
6 2 5 1 4 6
5 3 4 2 3 1
4 3 2
(m=0) (m=1) (m=2)
4 3 2
3 5 2 4 1 3
2 6 1 5 6 4
1 6 5
(m=3) (m=4) (m=5)
然后写出每种的置换群:
1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6
1 2 3 4 5 6 6 1 2 3 4 5 5 6 1 2 3 4
m= 0 m=1 m=2
1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6
4 5 6 1 2 3 3 4 5 6 1 2 2 3 4 5 6 1
m=3 m=4 m=5
(第一行是原来每位的数字,后一行为现在每位数字)
化简:
(1)(2)(3)(4)(5)(6) (1,6,5,4,3,2) (1,5,3)(2,6,4)
(1,4)(2,5)(3,6) (1,3,5)(2,4,6) (1,2,3,4,5,6)
(每个数对应下一个数,接着再找下一个数的对应数,遇到循环加括号)
最后,根据Polya原理:
Answer=(2^6+2^1+2^2+2^3+2^2+2^1)/6=14
(2表示两种颜色,幂表示每种的括号数,除以6表示有6种)
非常神奇的东西,不知道为什么,也不清楚具体的定义是什么(看也看不懂),反正这个典型就是这么牛的被解掉了!
参考:
http://blog.sina.com.cn/s/blog_4aba84bd010005rc.html
http://www.cnblogs.com/hankers/archive/2012/02/16/2354397.html
组合数学--Polya 原理及典型应用的更多相关文章
- POJ 1286 Necklace of Beads(Polya原理)
Description Beads of red, blue or green colors are connected together into a circular necklace of n ...
- AtcoderARC062F Painting Graphs with AtCoDeer 【双连通分量】【polya原理】
题目分析: 如果一个双连通分量是简单环,那么用polya原理计数循环移位即可. 如果一个双连通分量不是简单环,那么它必然可以两两互换,不信你可以证明一下相邻的可以互换. 如果一条边是桥,那么直接乘以k ...
- 2021.12.06 P1450 [HAOI2008]硬币购物(组合数学+抽屉原理+DP)
2021.12.06 P1450 [HAOI2008]硬币购物(组合数学+抽屉原理+DP) https://www.luogu.com.cn/problem/P1450 题意: 共有 44 种硬币.面 ...
- Apache Mina原理及典型例子分析
Apache Mina ,一个高性能 Java 异步并发网络通讯框架.利用 Mina 可以高效地完成以下任务: TCP/IP 和 UDP/IP 通讯 串口通讯 VM 间的管道通讯 SSL/TLS JX ...
- Android HttpURLConnection的使用+Handler的原理及典型应用
1.介绍 总结:HttpURLConnection用来发送和接收数据. 2.ANR异常报错 (1)ANR(Application not response) 应用无响应, 主线程(UI线程) (2)如 ...
- AOP之proceedingjoinpoint和joinpoint区别(获取各对象备忘)、动态代理机制及获取原理代理对象、获取Mybatis Mapper接口原始对象
现在AOP的场景越来越多,所以我们有必要理解下和AOP相关的一些概念和机制. import org.aspectj.lang.reflect.SourceLocation; public interf ...
- 【数论】【Polya定理】【枚举约数】【欧拉函数】【Java】poj2154 Color
你随便写一下出来,发现polya原理的式子里面好多gcd是相同的,gcd(n,i)=k可以改写成gcd(n/k,i/k)=1,也就是说指数为k的项的个数为phi(n/k),就很好求了,最后除的那个n直 ...
- Kubernetes(k8s)底层网络原理刨析
目录 1 典型的数据传输流程图 2 3种ip说明 3 Docker0网桥和flannel网络方案 4 Service和DNS 4.1 service 4.2 DNS 5 外部访问集群 5.1 外部访问 ...
- 区块链原理、设计与应用pdf电子版下载
链接:https://pan.baidu.com/s/1koShkDjEYOXxLOewZJU2Rw 提取码:8ycx 内容简介 · · · · · · 本书由专业区块链开发者撰写,是区块链开发起步 ...
随机推荐
- VS中的一些标记
1.//ToDO:此标记运行时会显示在任务列表窗口中.
- CSS3实现3d菜单翻转
transform-style:flat | preserve-3d: 3d透视属性.针对子元素如何在3d空间相对其父元素渲染,这个属性声明在父元素上,并且他的子元素使用了transform才会有效. ...
- Ganglia3.1.7安装与配置(收录)
一.所需要软件 二.安装过程 1.Ganglia运行平台的安装 2.Ganglia依赖库的安装 3.RRDTool的安装 4.Ganglia的安装 (包括使用yum方式 ...
- Github上的1000多本免费电子书重磅来袭!
Github上的1000多本免费电子书重磅来袭! 以前 StackOverFlow 也给出了一个免费电子书列表,现在在Github上可以看到时刻保持更新的列表了. 瞥一眼下面的书籍分类目录,你就能 ...
- Django笔记 —— 表单(form)
最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...
- iOS笔记054 - 核心动画
注意事项 :locationInView和translationInView // 返回相对于控件自身内部触摸点的位置 [pan locationInView:self]; // 返回两个触摸点之间的 ...
- (原创)最小生成树之Prim(普里姆)算法+代码详解,最懂你的讲解
Prim算法 (哈欠)在创建最小生成树之前,让我们回忆一下什么是最小生成树.最小生成树即在一个待权值的图(即网结构)中用一个七拐八绕的折线串连起所有的点,最小嘛,顾名思义,要权值相加起来最小,你当然可 ...
- LeetCode 206——反转链表
对单链表进行反转有迭代法和递归法两种. 1. 迭代法 迭代法从前往后遍历链表,定义三个指针分别指向相邻的三个结点,反转前两个结点,即让第二个结点指向第一个结点.然后依次往后移动指针,直到第二个结点为空 ...
- [转]Hexo博客添加访问统计 - 记录
引入不蒜子 <script async src="//dn-lbstatics.qbox.me/busuanzi/2.3/busuanzi.pure.mini.js"> ...
- Node js 安装+回调函数+事件
/* 从网站 https://nodejs.org/zh-cn/ 下载 这里用的 9.4.0 版本 下载完安装 安装目录是 D:\ApacheServer\node 一路默认安装 安装后打开cmd命令 ...