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

洛谷 P9545

有一张 \(n\) 个点的竞赛图\(m\) 组询问,每组询问给定 \(s, k\),以及 \(t_1 \sim t_k\),问以 \(t_1 \sim t_k\) 为源点,\(s\) 为汇点的最大流。

\(n \le 3000, m, \sum k \le 30000\)

直接跑显然不行,使用“最大流转最小割”这个经典套路。

回归本真,将 \(n\) 个点分成两个不相交的集合 \(S, T\)\(s \in S, t_1 \sim t_k \in T\)。则这种情况下割开的代价是 $f(T, S) = \sum \limits_{u \in T, v \in S} w(u, v) $

但是这个形式并不好直接计算,因为涉及到了两个点,不能拆开计算。

现在还没用用到竞赛图这个性质,即两两之间都有一条有向边,说明 \(w_{u, v} + w_{v, u} = 1\)。于是可以得到:

\[f(T, S) + f(S, T) = |S||T| \]

现在有了两个变量之和,再找到它们的差 \(C = f(T, S) - f(S, T)\),就可以解出来了。

仔细观察,\(w_{u, v} = 1\) 时对 \(C\) 的影响为 \(1\)\(w_{u, v} = 0(w_{v, u = 1})\) 时对 \(C\) 的贡献为 \(-1\).

也就是 \((u, v)\) 这条边对 \(u\) 时出边贡献为 \(1\),入边就是 \(-1\)。所以可以得到:\(C = \sum\limits_{u \in T} out_u - in_u\)

当然,这里不包含 \(T\) 集合内的连边。但是在上面那个式子里,\(T\) 集合内的连边 \((x, y)\),会算一次 \(1\)、一次 \(-1\),所以毫无影响。于是对于 \(u \in T\)\(in_u, out_u\) 就和 \(T\) 没关系了,就是整张图的入度、出度。

然后就好办了,枚举 \(|T|\),最大化 \(C\),选择 \(out_u - in_u\) 较大的点即可。

时间复杂度:\(O(nm + \sum k)\)

直接算不好算,转为最小割模型,然后利用竞赛图找到两数之和,进而想到去找两数之差,使得答案可以被拆成单点的。

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

相关文章:

  • 2026年2月佛山防水补漏公司推荐,高性价比与标准化施工流程 - 品牌鉴赏师
  • 一周连过华为HCIE、Cisco CCNP、TOGAF,这份备考时间表请收好
  • 行业内靠谱的2025板材品牌 - 品牌推荐(官方)
  • 大数据领域时序分析的跨领域应用案例
  • cf 2121F. Yamakasi 解题
  • XXE外部实体注入攻击
  • Gradle 与移动开发的完美融合之道
  • 网站配置谷歌邮箱 (Gmail) 自动发件完整教程(2026 最新版)
  • 命令注入攻击与防御
  • 交易所 K 线模块启动与故障修复全攻略
  • 法律研究数据挖掘效率低?AI应用架构师的3个大招帮你提升
  • 万字详解 Vue 项目从源码到上线:前端部署全流程指南
  • 从零部署 AI 矿机核心源码:全流程实操指南(附环境适配 + 避坑手册)
  • 抗体体外亲和力成熟技术:三大突变策略与技术原理
  • 靠谱的2026板材工厂推荐榜 - 品牌推荐(官方)
  • Windows Terminal 和 WSL:提升用户体验的终极指南
  • 行业内有实力的2025板材厂家 - 品牌推荐(官方)
  • 揭秘盒马鲜生礼品卡回收猫腻 - 京顺回收
  • 从零实现 Flutter 插件鸿蒙适配:volume_controller 实战指南
  • YOLO26改进45:全网首发--添加C3k2_SHSA:避免了多头冗余,并通过并行融合全局与局部信息提升准确率
  • 动物模型
  • 开发日志12
  • RAG工作机制详解:高质量知识库构建从入门到精通(非常详细),收藏这一篇就够了!
  • 多模态文档智能:视觉文档检索的现状综述与未来愿景
  • 某易九批x-sign逆向wasm分析
  • 智能体平台“三驾马车”:RAG、Workflow与Agent从入门到精通,收藏这一篇就够了!
  • 数学中的长度单位认识与应用:厘米与米
  • YOLO26改进44:全网首发--添加C3k2_MogaBlock:以更优的复杂度-性能平衡实现信息丰富的上下文挖掘
  • 2026年2月自动化厂家实战报告:主流服务商技术集成度及项目交付效能对比
  • 区间的线段并珂朵莉树