题目传送门

题目大意: 有 n(n+1)2\frac {n(n+1)} 22n(n+1)​ 个六边形瓷砖,第一层有 111 个,第二层有 222 个,以此类推组成一个三角形,给每块瓷砖染黑色或白色,两种染色方案相同当且仅当一种方案通过旋转或翻转得到另一种方案。

题解

明显的burnside定理,一共有 666 中置换,不动转120度转240度,以及三种不同方向的翻折

不动:循环长度为 111。

旋转:循环长度为 333,但是有可能中间多出 111 块瓷砖,那么这块瓷砖怎么转都不会变,所以它的循环长度为 111。

翻折:除了位于正中间的点他们循环长度为 111,其它点循环长度为 222。

对于同一个循环内的瓷砖,他们的颜色都相同,要么黑要么白,一共两种情况。

再套一个高精度模板即可。

代码如下:

#include <cstdio>
#include <cstring>
#define ll long longint n,m;
struct GJD{int len,a[410];GJD():len(1){memset(a,0,sizeof(a));}void jinwei(){for(int i=1;i<=len;i++)if(a[i]>9){a[i+1]+=a[i]/10;a[i]%=10;if(i==len)len++;}}void operator +=(const GJD b){if(b.len>len)len=b.len;for(int i=1;i<=len;i++)a[i]+=b.a[i];jinwei();}GJD operator *(const int b){GJD re;re.len=len;for(int i=1;i<=len;i++)re.a[i]=a[i]*b;re.jinwei();return re;}GJD operator *(const GJD b){GJD re;re.len=len+b.len-1;for(int i=1;i<=len;i++)for(int j=1;j<=b.len;j++)re.a[i+j-1]+=a[i]*b.a[j];re.jinwei();return re;}
}two[410],ans;int main()
{scanf("%d",&n);m=n*(n+1)/2;two[0].a[1]=1;for(int i=1;i<=400;i++)two[i]=two[i-1]*2;ans+=two[m];ans+=(two[m/3]*2)*(m%3>0?2:1);ans+=(two[(m-(n+1)/2)/2]*two[(n+1)/2])*3;int last=0;for(int i=ans.len;i>=1;i--)ans.a[i]+=last*10,last=ans.a[i]%6,ans.a[i]/=6;while(!ans.a[ans.len])ans.len--;for(int i=ans.len;i>=1;i--)printf("%d",ans.a[i]);
}

AHOI 2002 黑白瓷砖 题解相关推荐

  1. AHOI 2002 黑白瓷砖

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

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

    luogu P2561 [AHOI2002]黑白瓷砖(polya定理) 题目大意 将n(n+1)/2n(n+1)/2n(n+1)/2个六边形拼成三角形的形状,对这个三角形有顺时针旋转120度,逆时针旋 ...

  3. c语言一行黑白相间的瓷砖,卫生间黑白色的瓷砖好看吗 4款卫生间黑白瓷砖铺贴搭配效果图...

    卫生间黑白色的瓷砖好看吗 4款卫生间黑白瓷砖铺贴搭配效果图 素雅干净的卫生间设计展现在你眼前,散发着一种整洁自然的视觉冲击,黑白瓷砖铺贴地面,经典的色调组合,同时还有防滑的效果,很适合卫生间.方形的浴 ...

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

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

  5. 推荐阅读 | 工业物流自动化风起时

    导语 大家好,我是智能仓储物流技术研习社的社长,老K.随着工业互联网和智能制造等名词在制造行业不断被提及的今天,物流自动化系统在工业生产过程中也越来越被受到重视.与此同时也催生出了很多相关的创新企业. ...

  6. matlab黑白棋盘格,请不要一再错过!黑白棋盘格魔法瓷砖(组图)

    黑与白,不变的经典色.黑白棋盘格一直是时尚界的宠儿,多少次国际冰穿着这款花纹的大衣出现在镜头里就可知道它的经典魔力.黑白棋盘格瓷砖,牢牢盘踞着地面瓷砖装饰的空头老大位置,作为一个怎么铺贴都不会错的36 ...

  7. 蒜厂有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。 请写一个程序,计算你总共能够到达多少块黑色的瓷砖。

    蒜厂有一间长方形的房子,地上铺了红色.黑色两种颜色的正方形瓷砖.你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动. 请写一个程序,计算你总共能够到达多少块黑色的瓷砖. 输入格式 第一行是两个整数 ...

  8. 2022年GDCPC广东省大学生程序设计竞赛题解

    目录 A 拼图 题解 B FFT 题解:  C 魔法师  题解: D 剪纸 题解:  E 黑白大陆  题解: F 望舒客栈的每日委托 题解:  G Rock&Frog  题解: H 梅花易数 ...

  9. 领地柜怎么砸_在客厅和书房的隔墙上砸洞装个折叠窗,家里亮堂堂!这洞砸得值了...

    装修房子你最在乎的是什么?采光!谁不喜欢家里明亮又宽敞.不过偏偏有些业主家里客厅采光通风都不好,那要怎么补救呢?学学下面这位设计师,直接在客厅和书房之间的墙上"掏"个洞,装个室内折 ...

最新文章

  1. OpenCL产业开发链
  2. 用 Python脚本生成 Android SALT 扰码
  3. boost::fusion::as_nview用法的测试程序
  4. python和sqlserver_利用python实现mysql数据库向sqlserver的同步
  5. webpack --- 使用vue
  6. Hulu CEO预计网站本年营收将达5亿美元
  7. 51 Python - 装饰器 参数化装饰器——装饰器更通用
  8. ubuntu新建用户后,终端下方向键和tab键不可用的解决方法
  9. 存放有数组的list排序
  10. linux ip协议号,IP协议号大全
  11. 【资源汇总】超全整理深度学习相关学习资料,提供系统化的深度学习路径
  12. caffe源代码分析--math_functions.cu代码研究
  13. 华为光猫查看LOID密码
  14. 利用树制作的简易家谱
  15. 播布客教学视频_C学习笔记_7_100内最大的素数(97)
  16. YOLOv3网络结构细致解析
  17. 解决richedit的内容不能超过64k的方法
  18. 如何修改图片像素大小?调整图片大小的简单方法
  19. [Pyhon大数据分析] 五.人民网新闻话题抓取及Gephi构建主题知识图谱
  20. 经验分享 | 我的八股文学习路线及攻略

热门文章

  1. nginx基本功能和工作原理
  2. 织梦download.php漏洞,织梦DedeCMS 5.7SP1 /plus/download.php url重定向漏洞的解决方法
  3. 织梦 dedecms 大批量文章sitemap生成方法
  4. 射频芯片最详细解读来了!
  5. 李沐动手学深度学习v2/总结1
  6. python:基于itchat实现查找清理僵尸粉
  7. CC00339.CloudKubernetes——|KuberNetes运维.V56|——|Prometheus.v01|自动发现.v01|创建secret|
  8. 【STM32】5—UART串口(中断模式)
  9. 灌区智能测控一体化闸门系统解决方案
  10. 辞职千万不要写离职申请,懂的人自然懂,想要快速离职,不是申请辞职,而是将自己辞职的信息上交给公司,下面是辞职模板,且看且珍惜