luogu P2561 [AHOI2002]黑白瓷砖(polya定理)

题目大意

将n(n+1)/2n(n+1)/2n(n+1)/2个六边形拼成三角形的形状,对这个三角形有顺时针旋转120度,逆时针旋转,水平反转,三种置换,现在可以对每个六边形进行染色,问有多少种不同的染色方法

题目大意

设Sn=n(n+1)2Sn=\frac{n(n+1)}{2}Sn=2n(n+1)​

置换一:不进行变换:Sn{S_n}Sn​个循环

置换二:不反转,顺时针旋转120度:⌈Sn3⌉​\left\lceil\frac{S_n}{3}\right\rceil​⌈3Sn​​⌉​个循环

置换三:不反转,逆时针旋转120度:⌈Sn3⌉\left\lceil\frac{S_n}{3}\right\rceil⌈3Sn​​⌉个循环

置换四:反转,不旋转:⌈n2⌉+Sn−⌈n2⌉2\left\lceil\frac{n}{2}\right\rceil+\frac{S_n-\left\lceil\frac{n}{2}\right\rceil}{2}⌈2n​⌉+2Sn​−⌈2n​⌉​

置换五:反转,顺时针旋转120度:⌈n2⌉+Sn−⌈n2⌉2\left\lceil\frac{n}{2}\right\rceil+\frac{S_n-\left\lceil\frac{n}{2}\right\rceil}{2}⌈2n​⌉+2Sn​−⌈2n​⌉​

置换六:反转,逆时针旋转120度:⌈n2⌉+Sn−⌈n2⌉2\left\lceil\frac{n}{2}\right\rceil+\frac{S_n-\left\lceil\frac{n}{2}\right\rceil}{2}⌈2n​⌉+2Sn​−⌈2n​⌉​

AC代码

#include<bits/stdc++.h>
using namespace std;
struct BigInt{const static int mod=10000;const static int DLEN=4;int a[600],len;BigInt(){}BigInt(int v){memset(a,0,sizeof(a));len=0;do{a[len++]=v%mod;v/=mod;}while(v);}BigInt operator +(const BigInt &b)const{BigInt res;res.len=max(len,b.len);for(int i=0;i<=res.len;i++)res.a[i]=0;for(int i=0;i<res.len;i++){res.a[i]+=((i<len)?a[i]:0)+((i<b.len)?b.a[i]:0);res.a[i+1]+=res.a[i]/mod;res.a[i]%=mod;}if(res.a[res.len]>0) res.len++;return res;}BigInt operator/(const int &b)const{BigInt ret;int i,down=0;for(int i=len-1;i>=0;i--){ret.a[i]=(a[i]+down*mod)/b;down=a[i]+down*mod-ret.a[i]*b;}ret.len=len;while(ret.a[ret.len-1]==0&&ret.len>1) ret.len--;return ret;      }void output(){printf("%d",a[len-1]);for(int i=len-2;i>=0;i--)printf("%04d",a[i]);puts("");}
};
int main()
{int n;scanf("%d",&n);if(n==1) {puts("2");return 0;}if(n==2) {puts("4");return 0;}int a=(n+1)/2+(n*(n+1)/2-(n+1)/2)/2;int b=n*(n+1)/2;int c=((n*(n+1)/2+2)/3);BigInt aa(1),bb(1),cc(1);while(a--) aa=aa+aa;while(b--) bb=bb+bb;while(c--) cc=cc+cc;((aa+aa+aa+bb+cc+cc)/6).output();
}   

luogu P2561 [AHOI2002]黑白瓷砖(polya定理)相关推荐

  1. (每日一题)P4128 [SHOI2006] 有色图(文末有色图!)(Polya定理)(超级详细,清晰易懂)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 每日一题(莫反 / 多项式 / 母函数 / 群论) 2021.4.13 群论 嘿嘿嘿,本题题名为 有涩 ...

  2. [BZOJ1815BZOJ1488]有色图/图的同构(Polya定理)

    由于有很多本质相同的重复置换,我们先枚举各种长度的点循环分别有多少个,这个暴搜的复杂度不大,n=53时也只有3e5左右.对于每种搜索方案可以轻易求出它所代表的置换具体有多少个. 但我们搜索的是点置换组 ...

  3. AHOI 2002 黑白瓷砖

    小可可在课余的时候受美术老师的委派从事一项漆绘瓷砖的任务.首先把n(n+1)/2块正六边形瓷砖拼成三角形的形状,右图给出了n=3时拼成的"瓷砖三角形".然后把每一块瓷砖漆成纯白色或 ...

  4. Polya定理与Burnside引理及其应用

    Polya定理及其应用 群与置换群 轮换 PolyaPolyaPolya定理 BurnsideBurnsideBurnside引理 PolyaPolyaPolya定理的简单应用 PolyaPolyaP ...

  5. 置换群和Burnside引理,Polya定理

    定义简化版: 置换,就是一个1~n的排列,是一个1~n排列对1~n的映射 置换群,所有的置换的集合. 经常会遇到求本质不同的构造,如旋转不同构,翻转交换不同构等. 不动点:一个置换中,置换后和置换前没 ...

  6. [codevs 2926] 黑白瓷砖(2002年安徽省队选拔赛)

    描述 http://codevs.cn/problem/2926/ 题解: Polya定理的应用. 由于第一次做polya定理的题,故要写的详细些. 首先可以从题目中读到三个置换以及一个不动置换: 顺 ...

  7. poj2154Color polya定理+欧拉函数优化

    没想到贱贱的数据居然是错的..搞得我调了一中午+晚上一小时(哦不d飞LJH掉RP毕竟他是BUFF)结果重判就对了五次.. 回归正题,这题傻子都看得出是polya定理(如果你不是傻子就看这里),还没有翻 ...

  8. Burnside引理和Polya定理学习笔记

    前言 求·······的方案数 循环同构算一种 一脸懵逼 (于是我觉得系统的学一遍Burnside引理和Polya定理) 正文 置换 置换的概念 对于一个排列aia_iai​ 我们想成iii输进去会出 ...

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

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

最新文章

  1. 第三次学JAVA再学不好就吃翔(part26)--static关键字
  2. html5 a-z字母排序,Mint UI实现A-Z字母排序的城市选择列表
  3. idea 自动生成补全变量名 快捷键
  4. UVA494 Kindergarten Counting Game【输入输出+水题】
  5. pikachu暴力破解(burpsuite)
  6. android 10 无线 电脑模式,Win10电脑和安卓手机无线互投教程
  7. 想多赚钱!程序员如何把副业搞得风生水起?
  8. sql 查询结果随机排序
  9. 苹果iOS申请个人开发者账号注册教程
  10. donet core 应用 部署到CentOS
  11. 测评分享丨海思Hi3519AV100开发板功能测试
  12. 宝塔Linux面板如何进入,云服务器怎么进入宝塔面板
  13. Asp.Net Web 项目部署到阿里云 Windows版本服务器
  14. 什么是漏极开路【转】
  15. golang web 服务器 request 与 response 处理
  16. TPC/IP 协议头部说明
  17. oracle中的blob类型,clob类型,nclob类型主要区别是什么
  18. 杜克大学计算机数据科学,杜克大学数据科学专业解析
  19. 微信 js 点击下载APP
  20. 骑马式瘦腿瑜伽 消除肌肉型小腿

热门文章

  1. Tomcat调优教程(转载) 来自周立大佬文章
  2. java 0x01_【java】arcII码为0x01,0x02作为分隔符
  3. 深入浅出理解Redis
  4. 消防应急照明和疏散指示系统手动控制的设计与应用
  5. Twitter赢在开放,三年创造奇迹(收藏)
  6. 李沐windows深度学习环境配置
  7. pandas基于多条件文本模糊查询,list,str.contains()
  8. 互联网行业2015校园招聘
  9. c语言在线编译(c语言在线编译器手机版)
  10. mysql朗读_“绘爱”诗词朗读小程序源码(thinkphp+mysql+小程序端)