尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

20251113 正睿

20251113 正睿
📅 发布时间:2026/6/18 22:02:36

A

给定 \(n, m, k\),需要构造一个数组 \(a\),使得 \(a_i\) 为 \([1, m]\) 的整数且 \(\sum \gcd(i, i + 1) = k\)

\(n \le 10^5, m \le 10^{12}, n - 1 \le k \le (n - 2)m\),可以证明有解。

对于这种类型的构造题,结果肯定都是很优美的(要么平均,要么极端)。

这个题考虑每个数都尽量平均的情况,这样只有 \(2\) 种数,比较简单(\(\gcd(x,x) = x\)),而且有一个优秀的性质 \(\gcd(x, x + 1) = 1\)。

不妨设 \(a\) 为 \(y\) 个 \(x + 1\) 和 \(y + 1\) 个 \(x\) 拼接的结果,\(a = x + 1, x+ 1 \dots x + 1, x, x, \dots , x\)。

则 \((y - 1)(x + 1) + (n - y - 1)x + 1 = k\),化简可得:\((n - 2)x + y = k\)。

为了保证不出现一些奇怪的情况,钦定 \(1 \le y \le n - 1\) 以保证两种数都有。

显然有个解是 \(x = \lfloor \frac{k - 1}{n - 2} \rfloor, y = k - (n - 2)x\)。

时间复杂度:\(O(n)\)。


自己想到的构造是一堆 \(m\) 后面加一堆 \(1\),但似乎需要调整很多,比较复杂。

构造的方案一定都是比较优雅的,因为有些特殊的性质,这个题也是 。利用 \(\gcd(x, x) = x, \gcd(x, x + 1) = 1\) 刻画出答案,待定一下系数就可以了。

B

image

\(T \le 100, n \le 10^9\)。

先转化一下 \(y | x + n\),实际上就是 \(x + n \equiv 0\pmod y\),\(x\) 是只有 \(y - (n \mod y)\) 一个解(\(y | n\) 没有)。

那么这个图就是一个森林,路径唯一,从 \(x, y\) 往上条找 \(LCA\) 即可。(不然也没什么别的做法。)证明不会,打几个表应该能发现。

image

C

给定两个长度为 \(n\) 的 \(01\) 串 \(a, b\),可以进行如下两种操作若干次(选择一个 \(i\)):

  • 花费 \(X\) 的代价交换 \(a_i, a_i + 1\)
  • 花费 \(Y\) 的代价将 \(a_i\) 取反。

问将 \(a\) 变成 \(b\) 的最小代价。

\(n \le 10^7, X, Y \le 10^9\)

先只考虑操作 \(1\),忽略操作 \(2\)。(操作 \(2\) 丢到最后做也是更优的,虽然这个题似乎没啥用。)

将 \(a, b\) 中 \(1\) 的位置取出来,分别记为 \(c, d\),答案为 \(\sum |c_i - d_i|\)。是一个将 \(1\) 进行匹配的过程。

实际上,匹配操作和取反操作肯定是不交的(天才的想法)。不然设 \(x < i < y\),\(x, y\) 匹配,\(i\) 取反,将 \(x, i\) 匹配,\(y\) 取反即可,这样更优。

所以两种操作肯定是交替进行的,这就可以 DP 了,令 \(dp_i\) 表示使得前 \(i\) 个位置满足条件的最小代价,那么 \(dp_i\) 可以从 \(dp_{i - 1}\) 转移过来(取反);也可以从最大的 \(x\)(\(x\) 满足 \(a_{x + 1} \sim a_i\) 与 \(b_{x + 1} \sim b_i\) 的 \(1\) 数量相同)转移过来,这种情况有个性质:要么所有 \(c_i \le d_i\) 要么所有 \(d_i \le c_i\)(否则还可以割开),代价为 \(X(\sum c_i - \sum d_i)\)。

时间复杂度:\(O(n)\)。


“注意到” 匹配和取反操作不交就简单很多了。(怎么想到的呢?可能是因为如果有相交难以计算,先猜测不相交再证明的。)

D

给定一张 \(n\) 个点 \(m\) 条边的无向图,每个点有三个属性:\(a_i, b_i, c_i(b_i \le c_i)\)。

称 \(x\) 能到达 \(y\) 当且仅当存在一条 \(x \rightarrow y\) 的路径满足经过点 \(i\) 时不能有一个前面经过的 \(j\) 满足 \(b_j > c_i\)。

对于每个点,求出其能到达的点中 \({a_i}\) 最大值。

\(n,m \le 2 \times 10^5\)

能否经过 \(i\) 只和 \(b\) 的前缀最大值有关。所以可以将路径按 \(b\) 的前缀最大值分段。

对于每个 \(x\),都有个“圈子”,里面的点 \(u\) 满足 \(b_u \le b_x \le c_u\),在这里面的边都可以双向随便走,然后再到达一个 \(v\) 满足 \(b_u \le b_x \le \min(b_v - 1, c_u)\) ,此时前缀最大值就变成了 \(b_v\),和前面的毫无干系。

而 \(ans_x\) 就是圈子里的 \(\max\{a_u\}\) 以及满足条件的 \(v\) 的 \(ans_v\) 的最大值。

image

接下来对于每条边 \((u, v)\) 考虑啥时候能成为“圈子”里的无向边(记为 \(1\) 类边),什么时候能成为跨出圈子的有向边(记为 \(2\) 类边)。

  • 当 \(\max(b_u, b_v) \le b_x \le \min(c_u, c_v)\) 时是第一种。
  • 当 \(b_u \le b_x \le \min(b_v - 1, c_u)\) 时是第二种。

发现对于 \(b_x\) 相同的点整张图是一样的且每条边都对应的是两个区间。

考虑线段树分治,对于 \(1\) 类边,\(u, v\) 是可互相到达的,用并查集维护 \(u\) 所在连通块及里面的 \(a_{\max}\);对于二种边,\(ans_v\) 可对 \(u\) 所在连通块中所有点进行贡献。然后就做完了。

因为 \(2\) 类边中 \(b_v > r(r 是 b_x 的范围右端点)\),所以是没问题的。注意要先递归右边再递归左边!!

时间复杂度:\(O(n \log ^ 2 n)\)。


没想到可以对 \(b\) 进行分段(*******),这样每个点的贡献来源就比较清晰了。然后考虑 \((u, v)\) 啥时候为 \(1/2\) 类边,搞个线段树分治即可。

相关新闻

  • 基于Java+SSM+Flask家庭理财系统(源码+LW+调试文档+讲解等)/家庭理财/理财系统/家庭财务/家庭财务规划/家庭账目/家庭财务软件/家庭记账/理财器具/财务多元化/资产管理。
  • 主动交互和情境感知,AI 硬件是脱离手机屏幕掌控的蓝海机会丨硬件和端侧模型专场@RTE2025 回顾
  • centos 环境下部署mongodb并设定密码

最新新闻

  • Playwright自动化测试:从核心原理到实战应用的全方位指南
  • Claude Opus 4.7工程落地风险:不可控性如何摧毁AI生产信任
  • Django毕设项目: 基于 Django+Vue 的农业设备智能运维管理系统的设计与实现 基于 Django+Vue 的现代农业一体化管理系统(源码+文档,讲解、调试运行,定制等)
  • PowerPC 601缓存时序与总线仲裁机制深度解析
  • 一念成仙:看山不是山,看水不是水,为什么OPC创业的核心是商业模式,而非代码本身
  • 国内主流打包机厂家实测排行 适配电商物流多场景 - 起跑123

日新闻

  • 2026年不锈钢卷板厂家推荐排行榜:冷轧热轧/304/201不锈钢卷板,高颜值耐腐蚀源头厂家实力精选 - 企业推荐官【官方】
  • FLUX.1-dev FP8模型实战指南:24GB以下显卡高效部署方案
  • 2026佛山长途搬家价目表:跨省跨市搬家费用完整计算指南 - 从来都是英雄出少年

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号