
强连通分量
文章平均质量分 77
sdj222555
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
POJ 2723 二分+ 2-sat 判定
此题的题意很简单,有一些个门, 还有2 * n个钥匙分成了n组,每组里有两把钥匙,并且每组中只能使用一把钥匙, 然后每个门有两把锁,分别对应着钥匙,两个锁只要任意开一个门就会打开,并且,要打开一个门,必须保证他序号之前的所有门都打开了,类似于一关一关的往里闯 然后思路的话,由于是必须顺序的开门,所以可以进行二分枚举答案,如果枚举的数为m, 则我们要判定的就是1~m的门是否能被打开, 就要原创 2012-07-04 11:51:23 · 1001 阅读 · 0 评论 -
POJ 3678 Katu Puzzle 2-sat 判断是否有合法解
建图如下 AND 1 a0->a1,b0->b1 AND 0 a1->b0,b1->a0 OR 1 a0->b1,b0->a1 OR 0 a1->a0,b1->b0 XOR 1 a0->b1,a1->b0,b1->a0,b0->a1 XOR 0 a0->b0,b0->a0,a1->b1,b1->a1 需要注意的是,如果a,b的值已经原创 2012-07-03 15:24:47 · 907 阅读 · 0 评论 -
POJ 2186 Popular Cows 强连通分量 Kosaraju or tarjan
题目大意是:在一个牧群中,有N个奶牛,给定M对关系(A,B)表示A仰慕B,而且仰慕关系有传递性,问被所有奶牛(除了自己)仰慕的奶牛个数 因为仰慕关系具有传递性,因此在一个强连通分量中,每个奶牛都被分量中的其他奶牛膜拜,而且也膜拜着分量中的其他奶牛,这种互相膜拜的场景在现实生活中也是经常存在的,因此,本题可以将强连通分量缩点,并构造新图,最后做一次扫描,统计出度为0的点的个数,如果正好为1,表示这原创 2012-01-20 20:50:01 · 1048 阅读 · 0 评论 -
POJ 2762 Going from u to v or from v to u? 图的单连通性 tarjan or kosaraju
虽然本题是求单连通的,但是我们需要先求强连通分量,因为,强连通分量中存在双向路径,因此可以缩点,缩点后就好处理多了。 如果要满足题意,缩点后的树必须是一条链,而且所有边的方向都是一样的,如果出现分支,很容易证明会出现不可到达的一对点。 那么剩下的就是求最长链的顶点数是否等于强连通分量的个数了。 那么就可以使用拓扑排序,或者直接DFS。 拓扑排序中,不能出现同时有两个点的入度为0。 DFS原创 2012-01-21 00:37:08 · 1089 阅读 · 0 评论 -
POJ 2553 The Bottom of a Graph 强连通分量+缩点 tarjan or kosaraju
题目的意思是求有向图中满足“自己可达的顶点都能到达自己”的顶点个数 显然,在一个强连通分量中,每个点都符合要求,但是 如果强连通分量中有某个点跟外面的某个点相连了,这个强连通分量就不符合要求了,很显然,外面的点是无法回到这个点上的,如果能回到这个点,就是强连通分量中的一员了,这是矛盾的。 那么结论就是,缩点后,求出度为0的强连通分量中的顶点。 tarjan写的 #include #inc原创 2012-01-21 01:09:27 · 976 阅读 · 0 评论 -
POJ 3160 Father Christmas flymouse 强连通分量+缩点+DP
这道题的大意就是,给出一个有向图,每个点有一个点权,点权可能是正也可能为负,一个人从某点出发,沿着一些路,访问结点,或者仅仅是路过这个结点,而不去访问,最后求他能访问到的最大的点权和。 我们注意到,他对某个结点是可以选择访问或者不访问的,那么只用访问那些点权为正数的点了。 首先,求强连通分量,缩点,然后新点的点权就是原强连通分量中,所有正点权之和。 之后就要进行DP求解,我在本题中使用了Ko原创 2012-01-21 18:50:35 · 911 阅读 · 0 评论 -
POJ 3592 Instantaneous Transference 强连通分量+缩点+DP
这是一道变形题,不得不说是好题啊 题目大意是,有一张n*m的地图,每个点上可能是数字,代表矿石的数目,可能是*,表示一个传送阵,送往某个坐标,可能是#,代表不通。每次矿车只能往右方或者下方走一格,那么这就可以转化为一个有向图了。 每个点,往其右方和下方相邻的点建有向边,如果是#,就不建边了,如果是*,就要把*的位置跟其传送的位置建一条边。 之后就要求强连通分量,然后缩点了,再之后就是DP求最原创 2012-01-21 22:31:39 · 1147 阅读 · 0 评论 -
POJ 1236 Network of Schools HDU 3836 Equivalent Sets 强连通分量+缩点 tarjan or kosaraju
1,POJ 1236 有一些学校连接到一个计算机网络,这些学校之间达成了一个协议:每个学校维护着一个学校列表,它向学校列表中的学校发布软件。注意,如果学校B在学校A的列表中,则A不一定在B的列表中。 任务A:计算为使得每个学校都能通过网络收到软件,至少需要准备多少份软件拷贝。 任务B:考虑一个更长远的任务,想确保给任意一个学校发放一个新的软件拷贝。该软件拷贝能发布到网络中的每个学校,为了达到原创 2012-03-23 22:25:32 · 1018 阅读 · 0 评论 -
HDU 3622 二分+2-sat
这题二分的话,二分半径可以过,但是二分半径的平方就会跪,不知道为什么 #include #include #include #include #include #include #include #include #define MAXN 255 #define MAXM 50005 #define INF 500000005 #define eps 1e-7 using原创 2012-07-06 12:49:02 · 1199 阅读 · 0 评论 -
COJ 1253 二分+2-sat判定
X城的精神病院只有两个病房,一共关着N 名病人,编号分别为1~N。病人之间的关系有时极不和谐。很多病人之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“不和谐值”(一个正整数值)来表示某两名病人之间的仇恨程度,不和谐值越大,则这两名病人之间的积怨越多。如果两名不和谐值为c 的病人被关在同一病房,他们俩之间会发生摩擦,并造成影响力为c 的冲突事件。 每年年末,院里会将本年内病房中的所有原创 2012-07-05 21:36:11 · 1416 阅读 · 0 评论 -
POJ 2749 二分+2-sat判定
这题还是挺好想建图的 二分判定就行了 #include #include #include #include #include #include #include #define MAXN 2005 #define MAXM 50005 #define INF 1000000000 using namespace std; vectorg[MAXN]; int n, A,原创 2012-07-05 21:10:29 · 755 阅读 · 0 评论 -
POJ 3683 2-sat 输出解
题意方法和之前的3648基本一样 注意输出解的方式,分成两部分的点集,应该遍历其中一个点集,根据染色判断选择该点集的点还是另一个点集的点 #include #include #include #include #include #include #include #define MAXN 5005 #define MAXM 50005 #define INF 1000000000原创 2012-07-05 18:37:43 · 989 阅读 · 0 评论 -
POJ 3648 2-sat 输出解
这题的题意稍不留神就会看错,注意那个keep ...from 是啥意思 所以新娘看不见本排的情况,只能看见对面,要求不能看见不正常关系的一对。并且夫妇不能同时坐在一边。 很明显的模型了,由于新娘看的是对面的情况,所以就需要对新娘对面的人来分析建图,n对夫妇是2 *n个点, n对夫妇每对夫妇只能挑一个到新娘对面坐下,这很符合2-sat的初始的状态。然后又有一些不正常关系,就需要分别建图了。 并且原创 2012-07-05 15:55:58 · 2576 阅读 · 0 评论 -
POJ 3207 2-sat 判断是否有合法解
---------------------------------------------------------------------------------------------------------以下转载自http://cainiao2hao.blogcn.com/articles/poj3207.html 平面上,一个圆,圆的边上按顺时针放着n个点。现在要连m条边,比如a,b,那原创 2012-07-03 21:25:47 · 2232 阅读 · 0 评论 -
POJ 1904 King's Quest 强连通分量 +缩点+ 输入输出外挂 (非递归版trajan模板)
这道题很神奇,尤其是背景最神奇,国王竟然能有2000个儿子。 首先,看完题后第一感觉跟二分匹配有关系,结果最后给了一组完美匹配,于是,如果男的喜欢女的就连一条单向边过去,最后那组表示结婚的,就让女的连一条单向边给她丈夫,然后我们观察这个图,如果一个女的能跟这个男的结婚,首先男的必须喜欢她,然后通过这条边过去,到女的结点,然后从女的结点出发,必然能回到这个男的结点处,而且,如果这个女的不是这个男的原创 2012-01-21 21:00:11 · 1391 阅读 · 1 评论