【POJ2409】Let it Bead

题意:用$m$种颜色去染$n$个点的环,如果两个环在旋转或翻转后是相同的,则称这两个环是同构的。求不同构的环的个数。
$n,m$很小就是了。
题解:在旋转$i$次后,循环节的个数显然是$gcd(i,n)$。
如果考虑翻转,我们将点从$0$到$n-1$标号,令其先以0到圆心的连线为对称轴翻转,再旋转i次,则原来编号为x的会变成$n-x+i \mathrm{mod} n$,令$n-x+i=x \mathrm{mod} n$,则$2x=i$或$2x=n+i$。
分奇偶性讨论一下循环节的个数即可。
最后套用Pólya定理。
其实n=2的情况是算重了的,不过你会发现每种情况都恰好被算了两次,所以就不用管了。

#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
typedef long long ll;
int n,m;
ll ans;
ll pw[35];
int gcd(int a,int b)
{return !b?a:gcd(b,a%b);
}
int main()
{while(1){scanf("%d%d",&m,&n);if(!n&&!m)  return 0;int i;for(pw[0]=i=1;i<=n;i++) pw[i]=pw[i-1]*m;for(ans=i=0;i<n;i++){ans+=pw[gcd(n,i)];if(n&1) ans+=pw[(n+1)>>1];else    ans+=pw[(n>>1)+!(i&1)];}printf("%lld\n",ans/2/n);}
}

转载于:https://www.cnblogs.com/CQzhangyu/p/8227349.html

【POJ2409】Let it Bead Pólya定理相关推荐

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

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

  2. Burnside引理与Pólya定理

    正文 hht主要讲了Burnside引理的不完全证明和用Burnside引理推出Pólya定理 下面主要围绕这两方面来讨论 Burnside引理的不完全证明 有一个前置结论hht没有证明,说是需要引入 ...

  3. POJ2154(Pólya定理与欧拉函数优化)

    题目:Color 题意:将正n边形的n个顶点用n种颜色染色,问有多少种方案(答案mod p,且可由旋转互相得到的算一种) 先说说Pólya定理 设Q是n个对象的一个置换群,用m种颜色涂染这n个对象,一 ...

  4. Burnside引理Pólya定理

    Burnside's lemma 引例 题目描述 一个由2*2方格组成的正方形,每个格子上可以涂色或不涂色, 问共有多少种本质不同的涂色方案. (若两种方案可通过旋转互相得到,称作本质相同的方案) 解 ...

  5. POJ 2409 Let it Bead (Polya定理)

    题意 用k种颜色对n个珠子构成的环上色,旋转翻转后相同的只算一种,求不等价的着色方案数. 思路 Polya定理 X是对象集合{1, 2, --, n}, 设G是X上的置换群,用M种颜色染N种对象,则不 ...

  6. P4980-[模板]Pólya定理

    正题 题目链接:https://www.luogu.com.cn/problem/P4980 题目大意 nnn个物品图上mmm种颜色,求在可以旋转的情况下本质不同的涂色方案. 解题思路 既然是群论基本 ...

  7. (组合数学笔记)Pólya计数理论_Part.10_Pólya定理的推广——De Bruijn定理的母函数形式

    文章目录 写在前面 引入 模式清单 引理1 引理2 母函数型的De Bruijn定理 定理的特殊情况 XXX上没有置换群 YYY上没有置换群 X,YX,\,YX,Y上均没有置换群 例题 分析 写在前面 ...

  8. (组合数学笔记)Pólya计数理论_Part.9_Pólya定理的推广——De Bruijn定理

    文章目录 写在前面 问题引入 推导1 定理 推导2 De Bruijn定理 定理的特殊情况 CCC上没有置换群 HHH上没有置换群 C,HC,\,HC,H上均没有置换群 例题 分析 写在前面 总结推广 ...

  9. (组合数学笔记)Pólya计数理论_Part.8_Pólya定理的几种扩展

    文章目录 写在前面 直和上的扩展 直和 直和的计数性质 直和的循环指数 证明思路 例题分析 方法一(直和的循环指数) 方法二(将888个顶点和666个面作为整体进行研究) 分析 Cartes积上的扩展 ...

最新文章

  1. Web Components 简述
  2. JVM内存区域划分总结
  3. bzoj 1412 [ZJOI2009]狼和羊的故事 最小割建图
  4. EF架构~为IEnumerable接口添加增删查等操作,原因是IEnumerable导航属性更放心
  5. PBOC中文件结构,文件类型解析
  6. 计算机视觉结课论文,计算机视觉与图像识别结课论文
  7. 内存溢出_关于PermGen Space内存溢出解决方案
  8. Asp.Net中GridView、DataList、DataGrid三个数据控件的foreach遍历方法
  9. 工大瑞普Cisco路由模拟器Dynamips
  10. stm32呼吸灯c语言程序,基于stm32的PWM输出呼吸灯(包括stm32呼吸灯代码)
  11. 计算时间间隔 日历牌上的 周数
  12. cyclone4驱动LM75A温湿度传感器学习
  13. HTML5-坦克大战一完成坦克上下左右移动的功能(一)
  14. MySQL字段约束及多表查询---讲解三
  15. 昆明理工大学计算机学院李博,昆明理工大学
  16. 你真的理解图像处理经典算法 SIFT 吗?最深入、最全面综述:尺度不变特征转换
  17. 金九银十的你准备好了吗?Python 100道基础面试题先收藏!【附答案】
  18. 正在完成android更新三星,手机实时动态:这些都是三星手机正在获取Android 10
  19. 读书笔记:《黎明之街》
  20. 亚马逊要求的FCC-ID和 CE-RED认证的定频机是什么

热门文章

  1. JQuery ajax请求一直返回Error(parsererror)
  2. 【linux草鞋应用编程系列】_4_ 应用程序多线程
  3. 链表节点合并排序:数组和单链表
  4. 【转】ASP.NET中页面传值
  5. 关于base target=_self 等
  6. 协议学习:TCP/IP协议之物理层 上
  7. 经济师考计算机英语考试,中级经济师考试合格算获得中级职称吗?需要考英语和计算机吗?...
  8. win10 php mysql_win10 下 apache php mysql 开发环境安装
  9. 欢迎使用markdown编辑器20181206
  10. 扫描到U盘但找不到文件