博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hiho 第118周 网络流四·最小路径覆盖
阅读量:5046 次
发布时间:2019-06-12

本文共 3281 字,大约阅读时间需要 10 分钟。

描述

国庆期间正是旅游和游玩的高峰期。

小Hi和小Ho的学习小组为了研究课题,决定趁此机会派出若干个调查团去沿途查看一下H市内各个景点的游客情况。

H市一共有N个旅游景点(编号1..N),由M条单向游览路线连接。在一个景点游览完后,可以顺着游览线路前往下一个景点。

为了避免游客重复游览同一个景点,游览线路保证是没有环路的。

每一个调查团可以从任意一个景点出发,沿着计划好的游览线路依次调查,到达终点后再返回。每个景点只会有一个调查团经过,不会重复调查。

举个例子:

上图中一共派出了3个调查团:

1. 蓝色:调查景点;2

2. 橙色:调查景点;1->3->4->6

3. 绿色:调查景点;5->7

当然对于这个图还有其他的规划方式,但是最少也需要3个调查团。

由于小组内的人数有限,所以大家希望调查团的数量尽可能少,同时也要将所有的景点都进行调查。

当然,如何规划调查团线路的任务落到了小Hi和小Ho的头上。

 

有向无环图的最小路径覆盖。

建图:

把每个点,拆成入点,和出点,一条路径就是在B块一定是匹配了的,也就是说要求的最小路径覆盖,就是那些没有匹配的点,经过最大匹配后,B块剩下没有匹配的点是最少的,也就对应了最小需要的路径数。

所以: 最小路径覆盖 = N -最大匹配

然后这里求最大匹配,可以直接用匈牙利,也可以网络流。

网络流求最大匹配的建图:

s 到 A块容量为1,A到B有边,容量为1,B块到t容量为1.

 

转载于:https://www.cnblogs.com/TreeDream/p/5931440.html

你可能感兴趣的文章
MVC Razor
查看>>
软件目录结构规范
查看>>
Windbg调试Sql Server 进程
查看>>
linux调度器系列
查看>>
mysqladmin
查看>>
MySQL 优化之 Linux系统层面调优
查看>>
NSUserDefaults
查看>>
决策树Ecotree(转)
查看>>
三步在Centos搭建SVN服务器
查看>>
CF285E Positions in Permutations
查看>>
基于SSM的单点登陆03
查看>>
jQuery获取不到隐藏DIV的高度和宽度
查看>>
MyEclipse------黑科技
查看>>
ssm+dubbo/zk
查看>>
docker 制作本地镜像
查看>>
.net+mssql制作抽奖程序思路及源码
查看>>
Linux实战教学笔记46:NoSQL数据库之redis持久化存储 (二)
查看>>
解决 No Entity Framework provider found for the ADO.NET provider
查看>>
SVN服务器搭建和使用(三)(转载)
查看>>
Android 自定义View (三) 圆环交替 等待效果
查看>>