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

一些网络流的基础模型

其实刚学网络流几天,菜的要命。。。

默认会前置芝士(DicnicEK 等求解网络流算法)

最大流建模

最大流的建模角度是最直观的。

工程供需模型

存在一个有向图 \(G=(V,E)\),设 \(n=|V|,m=|E|\)。一条有向边 \((u,v,w)\) 表示能从节点 \(u\) 运货物到节点 \(v\) 且该道路的运输能力为 \(w\)。节点 \(i\) 有一个权值 \(p_i\)\(p_i\neq 0\)),\(p_i>0\) 表示这是一个工厂,可以产出 \(p_i\)\(p_i<0\) 表示这是一个消费者,可以消费 \(-p_i\)。工厂产出的货物可以沿着有向道路运送货物,运送到消费者手上时消费者就可以消费。求工厂能否满足所有消费者的消费需求。

做法

考虑把 \(p_i\) 转化到流上。我们建立超级源点 \(S\) 和超级汇点 \(T\),对于每个消费者,连接一条 \(i\to T\) 的容量为 \(-p_i\) 的有向边;对于每个工厂,连接一条 \(S\to i\) 的容量为 \(p_i\) 的有向边。对于有向边 \((u,v,w)\),将 \(w\) 当做容量。如果我们把 \(S\) 当做“生产总工厂”,流当做生产出的东西,就满足了题目条件。所有的产品从总工厂 \(S\) 沿着流流经工厂和消费者最后流到 \(T\)。由于消费者连接着 \(T\),所以产品一定会流进 \(T\) 的流一定流经消费者(这些产品一定能给消费者消费)。如果所以消费者连向 \(T\) 的边都满流了,那么就完成了所有消费者的供需。我们想要完成所有消费者的供需,肯定要尽量让流量大,那么就转化为了最大流,执行最大流算法即可。

二分图匹配

给定一个包含 \(n_1\) 个左部点,\(n_2\) 个右部点,\(m\) 条边的二分图。求最多能选出多少个不想交的边。

做法

考虑对于每个存在边的左部点 \(a\) 和右部点 \(b\) 连一条 \(a\to b\) 的容量为 \(1\) 的有向边。建立超级源点 \(S\) 和超级汇点 \(T\),对于每个左部点 \(a\) 连接一条 \(S\to a\) 的容量为 \(1\) 的有向边,对于每个右部电 \(b\) 连接一条 \(b\to T\) 的容量为 \(1\) 的有向边。此时我们求解从 \(S\)\(T\) 的最大流即为二分图最大匹配。考察这样做的正确性,由于每个左部点都被连了一条由源点连接的容量为 \(1\) 的有向边,所以从该点只会选择一条边流出 \(1\),选择了哪个相当于该点匹配了哪条边。此时最大流就是最大的流量,即为最大的选择的边数。

还有一些跟二分图最大匹配类似的(如圆桌聚餐),只是把容量改了改罢了,匹配逻辑还是一样的。

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

相关文章:

  • 223_尚硅谷_类型断言引出和基本使用
  • 题解:QOJ1838 Intellectual Implementation
  • Sora Video2深度解析:AI视频创作的效率革命与生态进化
  • 2024金融AI智能体投资决策的技术趋势:架构师的预判与布局
  • GESP2025年12月认证C++三级真题与解析(单选题1-8)
  • 导师严选2026专科生必用一键生成论文工具TOP10:开题报告文献综述全测评
  • PoE模块技术学习心得笔记
  • 《兜兜英语词根词缀拆解工具》dyn-前缀
  • GPU算力出租哪家好?五家服务商资源对比与选型建议
  • 管式反应器厂家有哪些?动态管式反应器厂家怎么挑选?2026精选优质加氢反应器厂家推荐分析
  • Sora Video2+一步API进阶实战:核心高级功能完整实现
  • Sora Video2+一步API进阶实战:典型问题深度排查与高可用项目优化
  • 2026养老新政全方位落地,银发生活迎来新机遇!
  • 《关于培育养老服务经营主体 促进银发经济发展的若干措施》:4件事与养老新信号
  • 唤醒大脑潜能:构建高效记忆的科学路径
  • Kimi K2.5 商业价值预估:把“会回答”变成“能交付”
  • Sub-agent(子智能体) 和 Skills(技能/工具) 的界限可以通过“自主性”和“上下文管理”这两个核心维度来清晰区分
  • Spring Boot Actuator+Prometheus+Grafana 生产级监控体系搭建
  • Kimi K2.5:当“技术叙事”压过“迭代效应”
  • Elasticsearch 分布式检索生产级优化:从索引设计到查询性能
  • CI/CD中的测试依赖管理:数据库、API与消息队列的全面优化
  • MyBatis-Plus 生产级深度优化:从性能到安全的全维度方案
  • 自动化测试报告生成与分发:从PDF到PM和CTO的智能流程
  • 为什么你的测试用例越来越难维护?因为你没做“模块化”
  • TestOps实战:如何让测试团队从“成本中心”变“价值中心”
  • 我用GitHub Actions + Selenium Grid做跨浏览器测试
  • softmax函数与logits
  • 研究报告:依赖注入(Dependency Injection)与控制反转(Inversion of Control)深度解析
  • TestOps的“测试资产目录”:所有用例,一目了然
  • 基于 Tekton 实现跨云测试的完整实践指南:公有云、私有云与本地环境的统一自动化测试体系‌