http://poj.org/problem?id=1236第一问:需要几个学校存在软件,才能通过传递,使得所有的学校都有软件 用tarjan算法求出强联通分量后,将每个联通分量缩成一个点,那么问题1的答案就是入度为0的点的个数 为什么?入度为0的点,肯定不能通过其他学校传送软件给他,所以他必须存在...
分类:
移动开发 时间:
2014-11-21 09:04:11
阅读次数:
145
http://www.lydsy.com/JudgeOnline/problem.php?id=1093两个条件综合起来加上求最大的节点数,那么很明显如果是环一定要缩点。然后再仔细思考下就是求dag的最长路的数目啦。。。然后wa了。。。看了题解。。。噗!第一次注意到缩点后会有重边QAQ。。。于是。。...
分类:
其他好文 时间:
2014-11-19 14:07:39
阅读次数:
229
本文转载自:http://blog.csdn.net/xinghongduo/article/details/6195337 说到以Tarjan命名的算法,我们经常提到的有3个,其中就包括本文所介绍的求强连通分量的Tarjan算法。而提出此算法的普林斯顿大学的Robert E Tarjan教...
分类:
编程语言 时间:
2014-11-15 14:05:55
阅读次数:
176
题目:ZOJ Problem Set - 3195 Design the city
题意:给出一个图,求三点的连起来的距离。
分析:分别求出三点中任意两点的距离 / 2 = ans
AC代码:
#include
#include
#include
#include
using namespace std;
#define N 50010
#define M...
分类:
其他好文 时间:
2014-11-06 20:09:26
阅读次数:
129
题目:poj 1470 Closest Common Ancestors
题意:给出一个树,一些询问。求LCA的个数、
分析:很简单的模板题目,但是模板不够优秀,一直wa...RE,各种错误一下午,终于发现自己模板的漏洞了。
AC代码:
#include
#include
#include
#include
using namespace std;
#def...
分类:
其他好文 时间:
2014-11-06 20:05:07
阅读次数:
210
题目:hdoj 2874 Connections between cities
题意:战争过后,一些城市毁坏了。意思图不连通,让你求任意两点的距离、
分析:很明显求LCA
但是图不连通,所以我们Tarjan的时候要对每个点进行。然后标记即可。
另外,这个题目卡vector,看来以后要学着用数组模拟邻接表了。
AC代码:
#include
#include
#...
分类:
其他好文 时间:
2014-11-06 17:30:51
阅读次数:
189
题目:hdoj 2586 How far away ?
题意:给出一个有权树,求任意两点的之间的距离。
分析:思想就是以一个点 root 作为跟变成有根数,然后深搜处理处所有点到跟的距离。求要求的两个点的LCA(最近公共祖先),
然后ans = dis【x】 + dis【y】 - 2 * dis【LCA(x,y)】,可以画图分析一下就知道。
求LCA我用的是Tarj...
分类:
其他好文 时间:
2014-11-06 11:01:48
阅读次数:
181
Tarjan算法 (以发现者Robert Tarjan命名)是一个在图中寻找强连通分量的算法。算法的基本思想为:任选一结点开始进行深度优先搜索dfs(若深度优先搜索结束后仍有未访问的结点,则再从中任选一点再次进行)。搜索过程中已访问的结点不再访问。搜索树的若干子树构成了图的强连通分量。 应用到咱.....
分类:
编程语言 时间:
2014-11-05 18:55:19
阅读次数:
227
似乎我搞得太复杂了?先tarjan缩点然后dfs就行了QAQ。(我不说我被一个sb错调了半个小时。。。。不要以为缩点后dfs就可以肆无忌惮的不加特判判vis了。。#include #include #include #include #include #include #include #inclu...
分类:
其他好文 时间:
2014-11-05 14:32:10
阅读次数:
117
题目:poj 3177 & 3352
题意:大概意思就是给你一个无向图,让你添加最少的边,让所有点都双连通。
分析:双连通的定义就是任意两个点至少有两条路可达。
其实做法跟添加最少边强连通一样,先对图中已经双连通的缩点,然后重新编号。
这就是著名的Tanjan算法。
通过搜索的思想对所有存在环的边遍相同的号
如果要让所有的点双连通,那么对于缩点后的图中如果度数为 1 的...
分类:
其他好文 时间:
2014-11-04 22:47:28
阅读次数:
387