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

20260429

A - 灾难

题意:给定一个 DAG,求每个点能支配的点的数量。

\(n \le 65534\),输入的文件大小不超过 1 MB


求一个点支配别人的数量很难求,考虑求出每个点会被那些点所支配。

对于一个点 \(i\) 而言,连向它的点记为 \(p_{i,j}\),那么能支配 \(i\) 的点必须在 \(LCA_{j=1}^{|p_i|}p_{i,j}\) 到根节点的点上。(这里的 LCA 并不是正常 LCA,我感觉而是类似于另外一颗由这个 DAG 所构成的树的 LCA).

具体做法如下:对于每个点,求出连向它的点在另一颗树上的 LCA,最后在把自己与那个 LCA 在另一棵树上连接。最后在用 dfs 求出子树大小就可以了。

B - 字符合并

题意:有一个长度为 \(n\) 的 01 串,你可以每次将相邻的 \(k\) 个字符合并,获得一定价值。

给出所有长度为 \(k\) 的串被合并所获得的价值以及得到的新字符,问把原串缩完能获得的最大价值。

\(n \le 300,k\le8\)


注意到 \(n,k\) 都很小,对于一段区间 \([l,r]\) 而言,由于 \(w_i>0\),所以区间 \([l,r]\) 最终一定会变成 \((r-l+1) \mod (k-1)\) 的 01 串(特别的,为 mod 后为 \(0\) 实际上是 \(k-1\))。

考虑区间 dp,设 \(f_{l,r,x}\) 表示对于区间 \([l,r]\),最终变成 \(x\) 这个状态的方案数,转移考虑枚举分界点最后一位。

看起来可能会超时,但实际上很多无效状态和不可能的情况可以剪枝。

C - 异或

题意:

有一颗以 \(1\) 为根节点的由 \(n\) 个节点组成的树,节点从 \(1\)\(n\) 编号。树上每个节点上都有一个权值 \(v_i\)。现在有 \(q\) 次操作,操作如下:

  • \(1~x~z\):查询节点 \(x\) 的子树中的节点权值与 \(z\) 异或结果的最大值。
  • \(2~x~y~z\):查询节点 \(x\) 到节点 \(y\) 的简单路径上的节点的权值与 \(z\) 异或结果最大值。

\(n,q \le 10^5,v_i,z \le 2^{30}\)


看到这两个查询就非常像树剖啊。

而对于异或,很容易想到 tire。

两者结合,用树剖的线段树套 trie 树。

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

但这样可能会 TLE,毕竟 8 亿再加上线段树。

注意到不需要修改,可以考虑用倍增去优化,直接把线段树改成 st 表维护,查询 \(O(\log V)\)

总时间复杂度 \(O(n\log n \log V)\)

赛后发现用可持久化线段树其实可以做到 \(O(n \log V)\),其实就是不树剖了,直接就在 dfs 的时候处理,两种情况分别考虑。第一种可以继承上一个 dfn 的状态,第二种则是继承父节点的状态。

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

相关文章:

  • Dinghy架构解析:深入理解docker-machine包装器的设计哲学
  • GLM-4-9B-Chat-1M企业落地:构建私有法律知识引擎,支持类案推送与裁判规则提炼
  • 基于安卓的母婴用品租赁与回收平台毕设源码
  • 从“单点防御“到“生态共治“:834号令重塑软件供应链安全范式——一个全链条制度框架的深度解析
  • Big-Yellow-J
  • BitNet b1.58-2B-4T-gguf真实案例:地方政府政策文件AI解读与办事指南生成
  • TypeORM嵌入式实体完全指南:告别数据冗余,让代码更优雅高效
  • 你的LaTeX参考文献引用对了吗?详解\cite, \citet, \citep的区别与选用场景
  • AI渗透测试工具:从“脚本跑腿“到“Agent大脑“的范式革命
  • ComfyUI-to-Python-Extension 安装教程:如何正确配置开发模式选项
  • 告别J-Link和ST-Link?手把手教你用DAPLink搞定STM32调试与拖拽烧录
  • SwiftyCam高级功能探索:背景音频集成、低光增强、自定义预览层
  • [CS:APP e] 关于对 第 章 读/写者的一点思考和题解 (作业 .,.,.)
  • OpenAI卸载量暴增%,Claude登顶第一:AI竞争进入价值观分层时代
  • zsh4humans的fzf集成:如何快速搜索命令历史与文件
  • AudioPlayers 插件开发指南:如何为新的音频平台添加支持
  • 如何高效使用Semi-Utils:完整批量水印处理方案
  • pyglet入门指南:从零开始构建跨平台游戏应用的完整教程
  • 每日热门skill:43K+下载量!OpenClaw办公全家桶office-cli:打工人效率翻倍的秘密武器
  • SLAMF7/CRACC/CD319 Fc嵌合蛋白在脓毒症巨噬细胞炎症调控研究中的应用
  • 3DTilesRendererJS插件系统完全指南:扩展你的3D渲染能力
  • 2026年3月服务好的空调厂家推荐,合肥空调,节能设计,绿色生活首选 - 品牌推荐师
  • 流处理引擎:事件时间与处理时间窗口的语义区别
  • TypeScript类型编程终极指南:从0到1掌握GreaterThan高级类型
  • chessboard.js核心架构揭秘:从DOM操作到事件处理的内部机制
  • AutoSizeText终极指南:如何在Flutter中实现完美文本自适应
  • 魔百盒CM201-2救砖记:用TTL线刷搞定EMMC和NAND闪存,附详细命令和避坑点
  • $coupons = array_filter($coupons, function($c) { return $c > 0; });的庖丁解牛
  • 为什么92%的PHP团队还在用Swoole?PHP 9.0内置异步栈追踪、Promise组合器与AI对话流中断恢复机制全拆解(仅限首批Beta用户验证)
  • 【AI Infra 核心】从零剖析大模型服务框架:如何榨干 GPU 算力实现极致推理吞吐?