点击打开链接
有向无环图的最小路径覆盖 = 顶点数- 最大匹配
#include
#include
#include
#include
#include
using namespace std;
const int maxn = 150;
int g[maxn][maxn];
int n, m;
int link[maxn];
bool used[maxn];
bool...
分类:
其他好文 时间:
2014-09-18 11:30:34
阅读次数:
154
UVA 1201 - Taxi Cab Scheme
题目链接
题意:给定一些乘客,每个乘客需要一个出租车,有一个起始时刻,起点,终点,行走路程为曼哈顿距离,每辆出租车必须在乘客一分钟之前到达,问最少需要几辆出租车
思路:如果一辆车载完一个乘客a,能去载乘客b,就连一条有向边,这样做完整个图形成一个DAG,然后要求的最少数量就是最小路径覆盖,利用二分图最大匹配去做,把每个点拆成两...
分类:
其他好文 时间:
2014-09-04 00:12:37
阅读次数:
210
T -Taxi Cab SchemeTime Limit:1000MSMemory Limit:30000KB64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 2060Appoint description:DescriptionRunning...
分类:
其他好文 时间:
2014-08-28 22:27:46
阅读次数:
301
大意:有n个点,告诉你一些单向边,问多少条边能把所有的点覆盖【注意点能重复覆盖 比如4->1->2 5->3】分析:知识储备:传递闭包: 所谓传递,可以这么理解,对于节点j如果i能到k并且k能到j那么i能到j,这样用像floyed就能处理出任意两个点能否到达for(int k = 1; k 2 .....
分类:
其他好文 时间:
2014-08-27 23:09:48
阅读次数:
339
导弹拦截是一个经典问题:求一个序列的最长不上升子序列,以及求能最少划分成几组不上升子序列。第一问是经典动态规划,第二问直接的方法是最小路径覆盖, 但是二分图匹配的复杂度较高,我们可以将其转化成求最长上升子序列,其最大值即等于不上升子序列的最小划分数。这就涉及到组合数学中偏序集的 Dilworth定理...
分类:
其他好文 时间:
2014-08-26 19:31:46
阅读次数:
273
K路径覆盖问题,最小费用最大流。。。。最小K路径覆盖的模型,用费用流或者KM算法解决,构造二部图,X部有N*M个节点,源点向X部每一个节点连一条边,流量1,费用0,Y部有N*M个节点,每一个节点向汇点连一条边,流量1,费用0,假设X部的节点x能够在一步之内到达Y部的节点y,那么就连边x->y,费用为...
分类:
其他好文 时间:
2014-08-23 12:33:20
阅读次数:
241
来自:http://blog.csdn.net/l04205613/article/details/6278394node 1:最小路径覆盖在一个PXP的有向图中,路径覆盖就是在图中找一些路经,使之覆盖了图中的 所有顶点,且任何一个顶点有且只有一条路径与之关联;(如果把这些路径中的每条路径从它的起始...
分类:
其他好文 时间:
2014-08-21 21:03:28
阅读次数:
195
大意:有n个任务,每个任务有三个属性:所在街区,最晚开始时间,执行需要时间告诉你一个矩阵代表街区间到达时间告诉你每个任务的三个属性问最少需要多少人去完成所有任务分析:floyd处理处任意两个街区的到达时间拆点 左边集合为n个任务 右边集合跟左边相同i任务能够到达j任务就从左集合引一条边到右集合求最....
分类:
其他好文 时间:
2014-08-19 12:39:04
阅读次数:
286
1 #include 2 #include 3 #include 4 #include 5 #define N 505 6 using namespace std; 7 8 int g[N][N]; 9 int n, m;10 int vis[N], linker[N];11 bool dfs...
分类:
其他好文 时间:
2014-08-18 15:48:42
阅读次数:
191
题目链接:http://poj.org/problem?id=3020
Antenna Placement
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 6692
Accepted: 3325
Description
The Global...
分类:
其他好文 时间:
2014-08-17 21:23:32
阅读次数:
263