热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

数据库技术:牛客多校2–JustShuffle(置换群的幂)

题意给出一个置换B,求出一个置换A,使得AkBA^kBAkB,k是一个大质数思路基础知识(1)基础知识(2)了解置换群概念以及基本性质后,开始讲解此题。AkB(Ak)tBtAk

题意
给出一个置换 B,求出一个置换 A ,使得

Ak=BA^k=B

,k 是一个大质数
思路
基础知识(1)
基础知识(2)
了解置换群概念以及基本性质后,开始讲解此题。

Ak=B=>(Ak)t=Bt=>Akt=Bt(kt%r)=1kt1(%r),Akt=A()=Bttkt1(%r)gcd(k,r)=1=>t=>exgcdtt<0+rBt?A^k=B\=>({A^k})^t = B^t=>A^{kt}=B^t\如果(kt%置换群秩r)=1即kt ≡ 1(%r),那么A^{kt} = A(置换群)=B^t\问题转为如和求解t?\kt ≡ 1(%r)又gcd(k, r) =1\=>由数论知识,方程有解,所以t必然存在\=>由exgcd即可求解t,如果t<0,则一直+r\问题继续转化为如何求解B^t?


开始讲解:

B=(12344123) begin{gathered} B=begin{pmatrix} 1 & 2&3&4 \ 4&1&2 & 3 end{pmatrix} end{gathered}


B2=(12344123)(12344123)=(12343412) begin{gathered} B^2=begin{pmatrix}1 & 2&3&4 \ 4&1&2 & 3 end{pmatrix}*begin{pmatrix}1 & 2&3&4 \ 4&1&2 & 3 end{pmatrix}=begin{pmatrix}1 & 2&3&4 \ 3&4&1 & 2 end{pmatrix} end{gathered}

B3=B2B=(12343412)(12344123)=(12342341) begin{gathered} B^3=B^2*B=begin{pmatrix}1 & 2&3&4 \ 3&4&1 & 2end{pmatrix}*begin{pmatrix}1 & 2&3&4 \ 4&1&2 & 3 end{pmatrix}=begin{pmatrix} 1&2&3&4\2&3&4&1end{pmatrix} end{gathered}

=>BtBt=>B^t就相当于在B中的环走t步


t=3(12342341)举例\t=3\begin{pmatrix}1 & 2&3&4 \ 2&3&4 & 1 end{pmatrix}


=1>4>3>2>131321223323构造=1->4->3->2->1走3步\1走3步到2(1-2匹配),2走3步到3(2-3匹配)以此类推

cir[i]i(0<=i<size)cir[i]icir[(i+t)%size]itcir[i]cir[(i+t)%size]=>Ans[cir[i]]=cir[(i+t)%size]设cir[i]表示存储圆上的第i个点(0<=iA
ns[cir[i]]=cir[(i+t)%size]

AC代码

数据库技术:牛客多校2 – Just Shuffle(置换群的幂)地址:%ignore_a_1%s://blog.csdn.net/weixin_44412226/article/details/107395789

需要了解更多数据库技术:牛客多校2 – Just Shuffle(置换群的幂),都可以关注数据库技术分享栏目—编程笔记


推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 2023 ARM嵌入式系统全国技术巡讲旨在分享ARM公司在半导体知识产权(IP)领域的最新进展。作为全球领先的IP提供商,ARM在嵌入式处理器市场占据主导地位,其产品广泛应用于90%以上的嵌入式设备中。此次巡讲将邀请来自ARM、飞思卡尔以及华清远见教育集团的行业专家,共同探讨当前嵌入式系统的前沿技术和应用。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文介绍了如何使用JQuery实现省市二级联动和表单验证。首先,通过change事件监听用户选择的省份,并动态加载对应的城市列表。其次,详细讲解了使用Validation插件进行表单验证的方法,包括内置规则、自定义规则及实时验证功能。 ... [详细]
  • 深入理解OAuth认证机制
    本文介绍了OAuth认证协议的核心概念及其工作原理。OAuth是一种开放标准,旨在为第三方应用提供安全的用户资源访问授权,同时确保用户的账户信息(如用户名和密码)不会暴露给第三方。 ... [详细]
  • 国内BI工具迎战国际巨头Tableau,稳步崛起
    尽管商业智能(BI)工具在中国的普及程度尚不及国际市场,但近年来,随着本土企业的持续创新和市场推广,国内主流BI工具正逐渐崭露头角。面对国际品牌如Tableau的强大竞争,国内BI工具通过不断优化产品和技术,赢得了越来越多用户的认可。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍了如何在BackTrack 5中配置和启动SSH服务,确保其正常运行,并通过Windows系统成功连接。涵盖了必要的密钥生成步骤及常见问题解决方法。 ... [详细]
  • 深入理解Java中的volatile、内存屏障与CPU指令
    本文详细探讨了Java中volatile关键字的作用机制,以及其与内存屏障和CPU指令之间的关系。通过具体示例和专业解析,帮助读者更好地理解多线程编程中的同步问题。 ... [详细]
author-avatar
杜_森后_665
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有