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

10.22 —— 2024icpc沈阳D,E,B,M

D. Dot Product Game

首先将对两个数组的操作转变为对一个数组的操作:可以发现,\(a\) 的某个子数组循环左移 \(r\) 位 与 对 \(b\) 的某个子数组循环右移 \(r\) 位是等价的,因此修改某个情形,只需要对其中一个序列的子数组循环左移或右移即可。

我们可以到,最终答案一定由序列的奇偶性决定(感觉这个猜还是比较容易想的)。证明也比较容易:一个经典结论是,交换任意排列的任意两个不同的数,逆序对数的奇偶性一定发生改变,而由于交换的两个位置 \(i, j\) 必须满足:\(a_{i} * b_{i} + a_{j} * b_{j} < a_{i} * b_{j} + a_{j} * b_{i}\),化简得:\((a_{i}-a_{j})(b_{i}-b_{j}) < 0\),可以等价于:\((i-j)((ba^{-1})_{i} - (ba^{-1})_{j}) < 0\)\(ba^{-1}\)\(a,b\) 作为置换复合后形成的环)。和 \(21\)\(ccpc\) 桂林 \(D\) 一样,可以看出我们只能交换原序列中的逆序对,进一步可得知每次操作后,逆序对数必然减少,最终一定会减为 \(0\)。而由于每次操作必然会导致逆序对数奇偶性的改变,因此可推导:操作次数的奇偶性等于逆序对数的奇偶性。

因此问题缩小为 带修动态维护序列逆序对数的奇偶性。

如果修改和查询操作没有什么特殊性,那这个问题应该没有什么解法。但由于修改一定是将某个子数组循环左移或右移,并且只是查询逆序对数的奇偶性,我们可以发现,每循环左移(或右移)子数组 \(a[l,r]\) 一步,逆序对的奇偶性是否改变与 \(r-l\) 的奇偶性有关,因为一次循环左移操作等价于将第一个元素移动到其他元素之后,而它们的数量是 \(r-l\)。因此得出结论:对于子数组 \(a[l,r]\), 循环左移/右移 \(d\) 步,逆序对奇偶性是否改变取决于 \(d(r-l)\) 的奇偶性。 修改操作不需要真正模拟一遍,每次只需要 \(O(1)\) 查询即可,总复杂度 \(O(n)\)

code

E. Light Up the Grid

这道题的状态转移有点把蒟蒻弄糊涂了,补了很长时间才补出来。

开始时想到了逆向着求单源最短路,但状态表示远远没有蒟蒻想得那么简单,因为并没有要求所有初始状态在同一操作过程中 同时到达 全1状态,而是只要经历过就可以。因此状态表示就需要特殊考虑。由于整张图只是一个 \(2 \times 2\) 大小,总共只有 \(16\) 种状态,因此可以考虑对图的所有情形进行状压。可以设状态 \(dp_{state}:\),目前仍存在二进制状态 \(state\) 表示的所有图还没有到达过全 \(1\) 状态(每一个二进制位代表一个 \(2 \times 2\) 矩阵,填充恰好与当前二进制位数相同),要使得它们均到达全 \(1\),最小总代价。

在状态转移时,只需要注意当某个状态转移到全 \(1\) 时,就可以消除掉这个状态,其他未到达的状态直接转移即可。最后问题就等价于给定所有初始图对应的二进制状态到达 \(0\) 的最短路,直接从 \(0\) 开始求一遍单源最短路即可。复杂度 \(O(2^{16})\)

code

B. Magical Palette

一道比较考验数学的构造题,思路和官解一模一样。

code

M. Gitignore

大致思路是没问题的,但忘记了当环的总边权和为 \(0\) 时也不可行。本题的关键是在于判断某个强连通分量内是否存在一个非 \(0\);而强连通分量的总边权和为 \(0\) 并不代表不存在非 \(0\) 环,这一点需要特别注意。

判断一个强连通分量内部是否存在一个非 \(0\) 环:由于强连通分量内部的点两两可达,因此可以考虑指定一个起点出发,遍历所有点和边,看是否可以找到非 \(0\) 环。在指定起点后,可以直接用 \(dfs\)\(bfs\) 记录每个点到起始点的距离 \(dist\);在遍历点 \(u\) 的出边时,若一个点 \(v\) 再次被搜索到,就代表找到了 \(v\) 所在的其中一个环,其中 \(dist[u] - dist[v]\) 代表环内除了边 \(w(u,v)\) 外的所有边权和;那么该环是非 \(0\) 环当前仅当 \(dist[u] - dist[v] + w = 0\)。按上述方法搜索,每个点和每条边均只会遍历一次,复杂度 \(O(n + m)\)

每个询问 \(O(1)\) 查询即可,总复杂度 \(O(n + m + q)\)

code

http://www.jsqmd.com/news/20232/

相关文章:

  • AGV 系统的内部物流与装配智能化方案设计:应用场景与核心优势详解 - 实践
  • 报表过滤框设置默认组织提示死循环
  • UiPath License
  • 一些变换
  • vue项目浏览器内存不断增加
  • 基于伪距差分定位技术实现方案
  • prometheus服务的客户端
  • AI 辅助开发工具
  • 网安人必看!2025年最硬核的20+变现路径,学生党也能月入4位数。 - 详解
  • SightAI 企业级实战:构建高可用、低成本的 AI 应用架构 - sight
  • 应用安全 --- 安卓加固 之 软件安装白名单
  • 应用安全 --- 安卓加固 之 软件安装白名单
  • Go开发者必备:5款提升代码质量的顶级Linter工具
  • 函数作用域在解决 JavaScript 自定义元素类跨环境兼容问题中的应用
  • React-router v6学生管理系统笔记 - 教程
  • NOIP模拟赛R8
  • 深入解析:本机网速会影响到云手机的运行吗
  • 交互的脉络:小程序事件平台详解
  • 基于MATLAB的Copula函数实现
  • 2025年国产助听器品牌推荐榜:聚焦专业适配,杭州爱听科技引领国产助听新体验​
  • 2025 年PPR家装管厂家最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析
  • 钡铼技术预测:未来工业AI发展的七大趋势
  • 2025 年废气处理设备厂家最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析
  • 2025 年集成房屋生产厂家最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析
  • 2025 年东莞石排到南通物流专线公司最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析
  • 2025 年北京品牌设计公司最新推荐榜,聚焦企业专业能力与服务价值深度剖析
  • 分类概念 - -一叶知秋
  • 2025 年连接器厂家最新推荐榜单:聚焦电子 / Type-C / 板对板等品类,精选领军企业助力下游企业精准选型
  • 2025 年干燥机厂家最新推荐排行榜:聚焦闪蒸 / 气流 / 沸腾 / 闭路循环等多类型设备,精选优质企业深度解析
  • 2025 年北京订制旅游 / 精品旅游 / 旅游包车 / 精品小包团旅游旅行社推荐,北京汇通清源国际旅游公司专业服务解析