初窥burnside

news/2025/2/26 3:33:42/文章来源:https://www.cnblogs.com/LUHCUH/p/18737635

前言

  • 最没道理的,竟做了一圈,菜的不成样子

Burnside

  • 警告:我不会啊,只是一种理解罢了,符号,措辞,非常不严禁(欢迎大家指正)

\[|X/G|=\frac{1}{|G|}\sum_{g\in G}|X^g| \]

  • \(X\) 表示所有方案的集合

  • \(x\in X,g\in G\)\(x\cdot g=y\) 表示一种方案 \(x\)\(g\) 变换后,变为一种方案 \(y\)

  • \(X/G\) 表示,所有 \(G\) 作用在 \(X\) 后的等价类的集合,一个等价类,就是本质相同的一组方案,换句话说这组方案可以通过 \(G\) 中的变换,互相到达。

  • \(X^g=\{x|x\cdot g=x,x\in X\}\),在 \(g\) 变换后保持不变的。

  • 具体的,举例:长度为 \(4\) 的环 \(a_i\),每个元素的取值为 \(A_0,A_1\),计算本质不同的环的数量

  • 给环标号为 \(1,2,3,4\)

  • \(X=\{\{A_0,A_0,A_0,A_0\},\{A_0,A_0,A_0,A_1\},\{A_0,A_0,A_1,A_0\},\{A_0,A_0,A_1,A_1\}\cdots,\{A_1,A_1,A_1,A_1\}\}\)\(|X|=2^4\)

  • \(G(\{g_0,g_1,g_2,g_3\},\cdot)\)

  • \(g_0=(1,2,3,4)\)\(g_1=(2,3,4,1)\)\(g_2=(3,4,1,2)\)\(g_3=(4,1,2,3)\)

  • 我们定义 \(x\cdot g\) 为,举例说明 \(\{A_0,A_1,A_0,A_1\}\cdot g_1=\{A_1,A_0,A_1,A_0\}\)

  • \(X^{g_2}=\{\{A_0,A_1,A_0,A_1\},\{A_0,A_0,A_0,A_0\},\{A_1,A_1,A_1,A_1\},\{A_1,A_0,A_1,A_0\}\}\)

  • \(X/G=\{\{\{A_0,A_1,A_0,A_1\},\{A_1,A_0,A_1,A_0\}\},\{\{A_0,A_0,A_0,A_0\}\},\{\{A_0,A_1,A_1,A_0\},\{A_1,A_1,A_0,A_0\},\{A_1,A_0,A_0,A_1\},\{A_0,A_0,A_1,A_1\}\}\cdots\}\)

  • 相信已经可以清楚的看到它们的结构了

  • 算一下吧:\(ans=\frac{2^4+2^1+2^2+2^1}{4}=12\) 也不知道我算得对不对

题目描述

  • [FJOI2007] 轮状病毒 的无标号版本,也就是旋转可以到达的算一种
  • 使用 burnside 引理,明确有 \(n\)\(g\),顺时针旋转一个位置,两个位置,\(n\) 个位置
  • 若我们考虑 \(g_k\)\(|X^{g_k}|\) 我们分析,易得,我们需要有 \(\frac{n}{gcd(n,k)}\) 个长得完全一样的子树,大小为 \(gcd(n,k)\),且这里的子树由于是 \(X\) 中的元素,故此有标号计数,就是原题轮状病毒。
  • \(F(d)\) 表示有标号计数,既大小为 \(d\) 时轮状病毒的答案。

\[ans=\frac{1}{n}\sum_{i=1}^nF(gcd(n,i))=\frac{1}{n}\sum_{d|n}F(d)(\sum_{i=1}^{\frac{n}{d}}[gcd(\frac{n}{d},i)=1])=\frac{1}{n}F(d)\varphi(\frac{n}{d}) \]

  • \(F(d)\) 的求法,首先有简单的 \(n^2\) \(dp\),轮状病毒的题解很全面了。

  • 接着考虑用组和数刻画,具体的,我们要求的形式为 \(\sum\prod a_i\),先求和让我们想到了插板法,后又乘积是不常见的形式。

  • 我们先枚举段数,\(j\),对于每一段我们有式子 \(F(d)=\sum_{j=1}^d2\binom{d+j}{2j}-\binom{d+j-1}{2j-1}\) 解释一下。我们想一下,统计一个环,我们给它加上 \(j\) 个板子。

  • 而乘积,可以转化为在每一段中选择一个代表元素,于是就是 \(d+j\)\(2j\) 个数,我们尝试构造,第一种我们把顺序第一个选的元素设为板子,第二个选择的元素为它上一个板子,下一个板子的代表元素,第3个选择的元素设为板子,依次类推,我们分配了一个环。第二种,我们先分配代表元素,后分配板子。

  • 其实这里也有着一种巧合,就是有带表元素了,就正好不用管每一段大于等于 \(1\) 的限制了。但是这真对吗?只有一种情况会算重,就是在第一种中我们选择了第一个元素并设为了板子,和第二种中我们选择了最后一个元素并设为板子,这两个板子分得段其实是相同的,而我们多算了一遍所以减去。

  • 减去的式子同样地道理,因为我们默认分割 \(1,n\) 两个元素,所以板子数量减 \(1\),那我们第一个选择的元素必然为代表元素,之后是板子依次类推。

  • 若您可以观察出来,\(F(d)=f_{2i}+f_{2i-2}-2\) 的话(\(f_0=f_1=1,f_{i+2}=f_{i}+f_{i+1}\))就直接矩阵快速幂就行了。

  • 可若是您没那么能观察,不妨考虑上面的有意思的组合计数方法,\(F(d)=\sum_{j=1}^d2\binom{d+j}{2j}-\binom{d+j-1}{2j-1}\)

  • 我们直接把这里的思想运用到,\(dp\) 上,我们不枚举 \(j\) 了,然后交替放置板和代表元素。

  • 我们设 \(dp_{i,1}\) 表示 \(i\) 之前结尾选的是代表元素,\(dp_{i,2}\) 表示 \(i\) 之前结尾玄德是板子

  • 有初值 \(dp_{0,2}=1\) 有转移 \(dp_{i,1}=dp_{i-1,1}+dp_{i-1,2}\)\(dp_{i,2}=dp_{i,1}+dp_{i-1,2}\)

  • 最后 \(F(n)=2dp_{n,2}-dp_{n,1}-2\) 这里减的 \(2\) 是我们算初始值的时候,多的两个空板子。(亲测有效!!

  • 最后只需构造 \(2\times 2\) 的矩阵即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/889876.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录绘制立体平面网格分块图像

绘制如下图所示的图片方法: ​​ 首先在drawio中为图片画好网格,如下图所示 ​​ 然后将该图片导出,(推荐导出为svg格式,无损清晰),将导出的图片导入PPT中 在PPT中通过开始=》形状效果=》三维旋转=》离轴 2:上​来将图片转换成立体效果。 ​​ ​​ 最后右键单击PPT中已…

开源一款数据转换扩展板-FreakStudio多米诺系列

数据转换板通过I2C接口进行信号采集和输出,支持最多16通道输入和2通道输出。具备860Hz采样率和50KHz输出频率,采用16位ADC和12位DAC芯片,适用于精确信号采集。小尺寸设计,支持堆叠级联。原文链接: FreakStudio的博客 摘要 数据转换板通过I2C接口进行信号采集和输出,支持最…

【CodeForces训练记录】Codeforces Round 1006 (Div. 3)

训练情况赛后反思 结束前打表看出来了 F 有一点进制的规律,太极限了来不及写了 A题 显然不合法的情况就是所有元素绝对值的和都比和的绝对值小,这种情况无论怎么凑都到不了 \(k\),剩下的就是把和均摊到值域上,除以值域向上取整就是答案点击查看代码 #include <bits/stdc…

西湖论剑2025Misc—cscs

西湖论剑2025cscs详解 Cobalt Strike流量主要是找beacon,主要以两种形式呈现 一小段shellcode(几百个字节),通常叫做stager shellcode,这段代码下载整个的beacon。 一个完全的beacon:一个可以反射性加载的PE文件 先来了解下cs流量的特征 cs流量特征: 1,基础特征:心跳包…

轻松驾驭Docker!Windows Docker Desktop部署Portainer全攻略

轻松驾驭Docker!Windows Docker Desktop部署Portainer全攻略 一、引言 在当今的软件开发领域,Docker 已经成为构建、部署和运行应用的标准之一。它通过容器化技术使得开发者可以轻松地打包应用程序及其依赖,并确保它们可以在任何环境中一致地运行。 为了更好地管理和监控这些…

部署 VS2022 驱动开发环境-解决无法编译驱动的问题

使用 VS2022 安装驱动开发环境,创建默认的驱动项目是无法直接编译出驱动的文件的,需要使用 NuGet 给项目安装【Microsoft.Windows.WDK.x64】1、下载安装 VS2022(最低支持的 WDK 版本:10.0.26100) 下载地址:https://visualstudio.microsoft.com/zh-hans/downloads 1.1 组件选…

web开发 辅助学习管理系统开发日记 day2

Q1:遇到的api返回结果数据封装的问题,在老版本的springboot中当实现类的类名和数据库中的类名不一致的是不会自动封装返回,因此返回结果值会显示null,但是在新版貌似已经会自动识别,所以我没有遇到该问题,如果遇到用手动结果映射的方法解决。Q2:在进行前后端联桥时,前端服…

右值引用和移动语义

右值引用(Rvalue reference)和移动语义(Move semantics) 左值(lvalue)和右值(rvalue)左值(也称为 locator value)是一个可以被修改的存储位置,指向内存中的某个位置 例子:变量、数组元素、解引用指针等判断左值的方法是:能够获得这个表达式的引用 或者取地址右值 …

【vulhub】redis 4-unacc (redis未授权访问)

渗透环境 攻击机: IP: 192.168.66.130(Kali) 漏洞收录于:vulhub/redis/4-unacc 涉及知识点:redis未授权访问 影响版本:redis 版本 < 6.x 漏洞的产生条件有以下两点:Redis绑定在0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源ip访问等相关安全策略,直接…

再论支付账务

支付账务是金融领域中复杂且关键的一环,涉及资金流动、风险控制和业务效率等多个方面。本文从支付结算的专业视角出发,深入剖析了支付账务的核心逻辑,包括会计科目设置、对账结算流程以及账务核算的关键要点。学习账务的时候你是否经常有这些疑问“待结算和待清算是什么?为…

分享[清华大学DeepSeek教程全家桶]下载地址

干货分享,最新整理的清华大学DeepSeek教程全家桶,内容如下:内容展示下载地址🎁🎁 文末福利,后台回复[603]获取下载地址 📢📢 喜欢这篇文章?欢迎大家✨关注 ❤️点赞 ➡️转发 分享给那些需要的朋友!如果认为此文对您有帮助,别忘了支持一下哦!声明:本博客原创文…

求二叉搜索树的第 K 小的值

题目:一个二叉搜索树,求其中的第K小的节点值。如下图,第3小的节点是4什么是二叉树:是一棵树   每个节点最多能有 2 个字节点。数据结构如下:{value, left,right}interface ITreeNode {value: number // 或其它类型left?: ITreeNoderight?:ITreeNode }上图中的二叉树结…