当前位置: 首页 > news >正文

AT_agc014_f [AGC014F] Strange Sorting

你需要手玩一下样例,会发现这样一个事情:

  • 所谓的 high 集合会一直窝在序列的末尾,而且会吸 low 集合的血,所以整个序列在 \(n\) 次操作内必然完成排序。

你再仔细思考一下就会知道:

  • 第一次操作 \(n\) 必然在 high 集合里,第二次操作 \(n - 1\) 必然在 high 集合里,依次类推。且必然会从末尾到开头逐渐排序。

为什么会这样,你考虑到我第一次操作没有选 \(n - 1\) 只可能是前面有一个 \(n\),但是在第二次操作时 \(n\) 必然被移动到最后一个位置,所以会将 \(n - 1\) 加进去,依次类推。

但是我们发现不总是要占满这些操作的,就比如说你第二次操作时 \(n - 1, n - 2\) 都被归位了,那么自然就少用一次操作。

考虑设 \(f_i\) 表示 \([i + 1, n]\) 按照如上方式排序需要的操作次数,但是我们就没有办法转移了。考虑记录一个 \(g_i\) 表示经过 \(f_i - 1\) 次操作后第一个元素是什么,发现其与 \(i, i + 1\) 会形成同构的关系,仔细分类讨论转移即可。

最后一步还是人力不可为之的。

http://www.rkmt.cn/news/916.html

相关文章:

  • 智能充气泵PCBA方案
  • 数字设计中的多级同步器(multi-stage synchronizer)
  • C++容器内存安全实战:ASan注解逐步指南
  • iOS系统与Windows系统有什么区别?
  • OSI 七层协议 和四层协议 TCP 三次握手的过程
  • 3. pod的生命周期
  • 2. pod基础原理
  • MySQL存储过程
  • ARC058D 笔记
  • SSE技术总结
  • OCP、OMSP 和 OLP 是三种常见的光层保护机制的对比
  • 自从切到Qoder开发后,每天都心旷神怡
  • 电子烟的4种屏幕驱动集成语音方案介绍
  • Altair PSIM 2024下载地址与安装教程
  • CF643E Bear and Destroying Subtrees
  • Go语言系统信息获取示例
  • OpenCSG 哈投达成战略合作,加速东北企业AI转型
  • 收录笔记:蜘蛛池,蜘蛛池出租 - 蚂蚁站群
  • 核心漏洞开发实战:Win32漏洞挖掘与防护绕过深度解析
  • Karmada v1.15 版本发布!多模板工作负载资源感知能力增强
  • 使用JavaScript开发谷歌浏览器插件:实现与核心要点
  • 自动化SEO工具:黑帽站群软件 - 蚂蚁站群
  • openssl编程之hmac算法编程示例
  • c#项目迁移至Kubernetes之NTLM认证问题解决方案
  • AI写代码
  • 蚂蚁超级镜像站群搜索:多站搭建教程,提升排名实战手记 - 蚂蚁站群
  • 易基因:安医大陈飞虎团队揭示METTL3介导m6A甲基化在炎症性疾病发病机制中的表观调控作用:IJBM|项目文章
  • 一键批量镜像站群的软件,多任务不费时 - 蚂蚁站群
  • Year of the Rabbit – TryHackMe
  • 20231313张景云《密码系统设计》第一周