DAG路径覆盖模型
概述
路径覆盖模型的特点是DAG中每个点经过且只经过一次,且一条路径覆盖路径上的所有点。
将每个点拆为\(x\)和\(x'\),暂不考虑其实际意义。然后连边\(S\rightarrow x\),\(x'\rightarrow T\),对于原图中的边\(u\rightarrow v\),连边\(u\rightarrow v'\)。
想象每个点本来都是独立的,若一个\(u\)与\(v'\)相匹配,就说明一条路径经过了\(u\rightarrow v\)。这样每个点最多只会入和出一次。若求最大匹配则可以得到最多的边数,则最小路径覆盖就是\(n-最大匹配\)。
应用
判定性问题
问能否用一条路径/若干环覆盖图。
判断最大匹配是否为\(n\)即可。
\(k\)起点路径覆盖
设有\(k\)的起点。建一个起点源\(Q\),\(S\rightarrow Q(k)\),\(Q\rightarrow x'\)。相当于k条路径从Q开始。与一般点不同的是\(Q\)没有\(Q'\),因此路径中间不能经过\(Q\)。
任意起点路径覆盖
\(S\rightarrow x'\)。
每个点至少经过一次
这个问题不在本节讨论范围内。每条原图中的边建为\(u\rightarrow v([1,\inf])\) ,用上下界最小流解。
最小费用路径覆盖
边上加费用即可。
Wf2015 Catering
另一种建模方法。
DAG路径覆盖模型的更多相关文章
- POJ 2594 传递闭包的最小路径覆盖
Treasure Exploration Time Limit: 6000MS Memory Limit: 65536K Total Submissions: 7171 Accepted: 2 ...
- uva1201 DAG 最小路径覆盖,转化为 二分图
大白例题P356 你在一座城市里负责一个大型活动的接待工作.你需要去送m个人从出发地到目的地,已知每个人的出发时间出发地点,和目的地点,你的任务是用尽量少的出租车送他们,使得每次出租车接客人,至少能提 ...
- 【LA3126 训练指南】出租车 【DAG最小路径覆盖】
题意 你在一座城市里负责一个大型活动的接待工作.明天将有m位客人从城市的不同的位置出发,到达他们各自的目的地.已知每个人的出发时间,出发地点和目的地.你的任务是用尽量少的出租车送他们,使得每次出租车接 ...
- 训练指南 UVALive - 3126(DAG最小路径覆盖)
layout: post title: 训练指南 UVALive - 3126(DAG最小路径覆盖) author: "luowentaoaa" catalog: true mat ...
- 有向无环图(DAG)的最小路径覆盖(转)
DAG的最小路径覆盖 定义:在一个有向图中,找出最少的路径,使得这些路径经过了所有的点. 最小路径覆盖分为最小不相交路径覆盖和最小可相交路径覆盖. 最小不相交路径覆盖:每一条路径经过的顶点各不相同.如 ...
- UVALive - 7368 Airports DAG图的最小路径覆盖
题目链接: http://acm.hust.edu.cn/vjudge/problem/356788 Airports Time Limit: 3000MS 问题描述 An airline compa ...
- UVAlive3126 Taxi Cab Scheme(DAG的最小路径覆盖)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=32568 [思路] DAG的最小路径覆盖. 将每个人看做一个结点,如 ...
- POJ1422 Air Raid 【DAG最小路径覆盖】
Air Raid Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 6763 Accepted: 4034 Descript ...
- 有向无环图(DAG)的最小路径覆盖
DAG的最小路径覆盖 定义:在一个有向图中,找出最少的路径,使得这些路径经过了所有的点. 最小路径覆盖分为最小不相交路径覆盖和最小可相交路径覆盖. 最小不相交路径覆盖:每一条路径经过的顶点各不相同.如 ...
随机推荐
- mssql sqlserver 批量删除所有存储过程的方法分享
转自:http://www.maomao365.com/?p=6864 摘要: 下文讲述采用sql脚本批量删除所有存储过程的方法,如下所示: 实验环境:sqlserver 2008 R2 平常使用sq ...
- Spring MVC 之请求参数和路径变量
请求参数和路径变量都可以用于发送值给服务器.二者都是URL的一部分.请求参数采用key=value形式,并用“&”分隔. 例如,下面的URL带有一个名为productId的请求参数,其值为3: ...
- June 15. 2018 Week 24th Friday
If at first you don't succeed, then dust yourself off and try again. 失败了没关系,重振旗鼓,从头再来. From Aaliyah, ...
- Xlua 不同平台链接库编译
xlua 下载包中提供lua5.3的库文件,如果需要luajit或者自己添加删除的就需要自己进行编译. Lua53版本没那么多事,主要是LuaJIt版本折腾的比较久. 工具 Xlua使用CMake进行 ...
- 常见C语言内存错误
前言 C语言强大的原因之一在于几乎能掌控所有的细节,包括对内存的处理,什么时候使用内存,使用了多少内存,什么时候该释放内存,这都在程序员的掌控之中.而不像Java中,程序员是不需要花太多精力去处理垃圾 ...
- JSP内置九个对象Request请求对象
jsp内置对象是什么呢? 例如Java语言使用一个对象之前需要实例化(也就是所说的new一个对象),创建对象这个过程有点麻烦,所以在jsp中提供了一些内置对象,用来实现很多jsp应用.在使用内置对象时 ...
- 设计模式のDecoratorPattern(装饰器模式)----结构模式
一.产生背景 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构.这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装. 这种模式创建了一个装 ...
- Python装饰器 [1]
装饰器本身是个函数 import time def log(func): def wrapper(*args, **kwargs): start = time.time() result = func ...
- php 10进制转62进制,可用于短网址生成
<?php /** * 十进制数转换成62进制 * * @param integer $num * @return string */ function from10_to62($num) { ...
- pgsql SQL复杂查询示例
每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code WITH tmp AS(SELECT sum(sessioncount) as v ...