Treasure Exploration Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 8550   Accepted: 3495 Description Have you ever read any book about treasure exploration? Have you ever see any film about treasure exploration? Have you ever explored…
<题目链接> 题目大意: 机器人探索宝藏,有N个点,M条边.问你要几个机器人才能遍历所有的点. 解题分析: 刚开始还以为是最小路径覆盖的模板题,但是后面才知道,本题允许一个点经过多次,这与最小路径覆盖中,路径之间不能有交点重合相矛盾,所以,我们用Floyd利用传递闭包对原图进行一些处理.所谓传递闭包就是,a能到b,b能到c,所以a能到c.最后对处理后的图计算最小路径覆盖. #include <cstdio> #include <cstring> #include <…
传送门 引子: 有一个问题,是对于一个图上的所有点,用不相交的路径把他们覆盖,使得每个点有且仅属于一条路径,且这个路径数量尽量小. 对于这个问题可以把直接有边相连的两点 x —> y,建一个二分图 x' —> y,最后 节点数 - 最大匹配数 即为最终答案. 这才是题解: 但是这个题目不同,此题问的是用一些路径把所有点覆盖,并没有说每个点有且仅属于一条路径,所以需要求这个图的传递闭包. 把可达的两点建立二分图.最后 节点数 - 最大匹配数 即为最终答案. 可以看看这篇blog ——代码 #in…
Treasure Exploration Time Limit:6000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 2594 Description Have you ever read any book about treasure exploration? Have you ever see any film about treasure exploratio…
POJ 2594 Treasure Exploration 题目链接 题意:有向无环图,求最少多少条路径能够覆盖整个图,点能够反复走 思路:和普通的最小路径覆盖不同的是,点能够反复走,那么事实上仅仅要在多一步.利用floyd求出传递闭包.然后依据这个新的图去做最小路径覆盖就可以 代码: #include <cstdio> #include <cstring> #include <vector> #include <algorithm> using names…
题意:选出最小路径覆盖图中所有点,路径可以交叉,也就是允许路径有重复的点. 分析:这个题的难点在于如何解决有重复点的问题-方法就是使用Floyd求闭包,就是把间接相连的点直接连上边,然后就是求最小路径覆盖了.我来大概解释一下为什么是对的,首先我们要明确,当我们重复利用一个点的时候,一定是有两个比较良好的路径相交了,而二分图是不允许这样的情况存在的,因为那必然存在了一个点有一个以上的出度或者入度了,而怎么避免这个问题呢,看下面的图: 这就是针对这个问题的一个典型的模型,如果使用正常二分图,求得的匹…
Treasure Exploration Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 9794   Accepted: 3975 题目链接:http://poj.org/problem?id=2594 Description: Have you ever read any book about treasure exploration? Have you ever see any film about treasure…
                                             Treasure Exploration 复见此题,时隔久远,已忘,悲矣! 题意:用最少的机器人沿单向边走完(覆盖)全部的点.典型的最小路径覆盖,如果不懂二分图匹配可以参考:二分图大讲堂 先用floyd传递闭包,再求最大匹配,最小路径覆盖=V-最大二分匹配(最小点覆盖).为什么要用floyd传递闭包呢,每个点可以被多个机器人走过,博主就是这里没考虑到.. 我记得这个题是写过博客的....//领接矩阵匈牙利算…
Treasure Exploration Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 8130   Accepted: 3325 Description Have you ever read any book about treasure exploration? Have you ever see any film about treasure exploration? Have you ever explored…
题目链接:http://poj.org/problem?id=2594 在外星上有n个点需要机器人去探险,有m条单向路径.问至少需要几个机器人才能遍历完所有的点,一个点可以被多个机器人经过(这就是和单纯的最小路径覆盖的区别). 因为图是一个有向图 例如 1—>3, 2—>3; 3—>4; 3—>5; 左边是floyd之前的,右边是传递之后的,左边的最大匹配是2,右边是3: 其中为什么用传递闭包就能求最大匹配,自己只可意会不可言传:—_—;   #include<stdio.h…