题意:有一个人他要把一个消息通知到所有人,已知一些通知关系:A 能通知 B,需要花费 v,而又知道,如果某一个小团体,其中的成员相互都能直接或间接通知到,那么他们之间的消息传递是不需要花费的,现在问这个人将消息传给所有人所需的最小花费。首先,一个团体中能够相互通知其实就是一个强连通分量,所以首先找出...
分类:
其他好文 时间:
2015-09-15 20:09:04
阅读次数:
145
A. POJ 1236 Network of Schoolst题意:有n个学校,每个学校都可以给它名单上的学校发送软件。然后现在问你至少需要给多少个学校发送软件。思路:求出强连通分量的个数,每一个强连通分量需要一个软件。#include#include#include#include#include...
分类:
其他好文 时间:
2015-09-12 12:12:27
阅读次数:
138
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1269连通分量, 断断续续看了几天, 今天终于A了道强联通分量(SCC)模板题。 初学SCC, 理解的还不是很好, 是利用Dfs中回溯过程进行操作, 细节掌握还不够好。本题题意是判断有向图中SCC 个数是否唯...
分类:
其他好文 时间:
2015-09-11 23:31:18
阅读次数:
247
题意:一个人需要联系其他所有人,已知他自己联系每个人的花费,并且他可以联系某个人再让他联系他能联系到的人,给出一系列关系表示 A 能够联系 B。问他最少需要联系多少人,花费多少钱首先,建成一个有向图,强连通分量内的点可以相互通知,但是如果某个强连通分量入度为0,那么这个强连通分量中的点不能通过其他分...
分类:
其他好文 时间:
2015-09-11 00:02:51
阅读次数:
231
题意:有多个命题,需要证明他们可以互相推出,现在已经有一些证明关系即 A 可以证明 B,问至少还需要多少证明关系。首先,如果某几个命题证明关系可以成环,那么这些命题必然可以相互证明,只要沿着环的边走就能到达其他命题,所以首先是需要强连通缩点,之后对于一个无环图,我们发现如果一个强连通分量它无出度,那...
分类:
其他好文 时间:
2015-09-10 22:28:44
阅读次数:
222
题意:对于一个有向图,问最大团中有多少点,要求该点集内所有点对间至少有一条路径(u到v或v到u或两条都有)。首先,对于每一个强连通分量,其中的所有点必然能够互相到达,所以先进行缩点,然后对于缩点后的 DAG,dp[i] 表示从 i 强连通分量开始能够到达的最多的点数,那么在缩点时需要记录一下每个强连...
分类:
其他好文 时间:
2015-09-10 22:26:25
阅读次数:
197
题意:判断给定有向图中是否所有点都能够互相到达。就是询问是否只有一个强连通分量。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxn=1e4+5; 8 const int max....
分类:
其他好文 时间:
2015-09-10 22:23:52
阅读次数:
140
题意:有 n 个房间,不同房间之间有单向通道,问是否任意两个房间 A 、B 都可以从 A 到 B 或从 B 到 A(有一条有就可以)。在这题中,如果一些点是在同一个强连通分量中,那么这些点肯定能够相互到达,并且如果其他的点到达这里的任意一点,也就可以到达强连通分量中的所有点,所以首先需要对这题进行缩...
分类:
其他好文 时间:
2015-09-10 14:28:01
阅读次数:
224
给我们一个有向图,有两个问题1、最少要给多少个点发消息,才能使得所有的点都收到消息(消息可以随边传递)2、最少需要多少条边才能使得图变成强连通图对于一个强连通分量,可以当做一个点来考虑,所以我们可以缩点,然后得到DAG图,那么对于第一个问,即是入度为0的点有多少个,因为入度为0的点无法收到消息。对于...
分类:
其他好文 时间:
2015-09-09 16:33:47
阅读次数:
219
有向图中在若两点之间可以互相到达,则称这两点强连通,如果一个点集内的所有点都可以互相到达,那么这个点集就是图的一个强连通分量,而我们需要找出有向图中的所有极大强连通分量,于是就用Tarjan算法进行强连通,并将一个连通块缩成一个点,这样就可以形成了一张有向无环图,对解题会很有帮助。找强连通分量的方法...
分类:
其他好文 时间:
2015-09-09 00:54:12
阅读次数:
313