Network Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 11684 Accepted: 5422 Description A Telephone Line Company (TLC) is establishing a n ...
分类:
其他好文 时间:
2016-04-29 23:45:52
阅读次数:
226
转载自:http://www.tuicool.com/articles/EnMFFja 原创:kuangbin 题意: 一个有向图,求: 1) 至少要选几个顶点,才能做到从这些顶点出发,可以到达全部顶点 2) 至少要加多少条边,才能使得从任何一个顶点出发,都能到达全部顶点,即成为一个强连通分量 思路 ...
分类:
Web程序 时间:
2016-04-27 20:43:38
阅读次数:
355
1179: [Apio2009]Atm Description Input 第一行包含两个整数N、M。N表示路口的个数,M表示道路条数。接下来M行,每行两个整数,这两个整数都在1到N之间,第i+1行的两个整数表示第i条道路的起点和终点的路口编号。接下来N行,每行一个整数,按顺序表示每个路口处的ATM ...
分类:
其他好文 时间:
2016-04-27 00:15:50
阅读次数:
262
一.基本概念 1.桥:是存在于无向图中的这样的一条边,如果去掉这一条边,那么整张无向图会分为两部分,这样的一条边称为桥无向连通图中,如果删除某边后,图变成不连通,则称该边为桥。 2.割点:无向连通图中,如果删除某点后,图变成不连通,则称该点为割点。 二:tarjan算法在求桥和割点中的应用 1.割点 ...
分类:
编程语言 时间:
2016-04-18 22:30:04
阅读次数:
467
一:tarjan算法详解 ?思想: ? ?做一遍DFS,用dfn[i]表示编号为i的节点在DFS过程中的访问序号(也可以叫做开始时间)用low[i]表示i节点DFS过程中i的下方节点所能到达的开始时间最早的节点的开始时间。(也就是之后的深搜所能到达的最小开始时间)初始时dfn[i]=low[i] ? ...
分类:
编程语言 时间:
2016-04-18 01:05:37
阅读次数:
320
思想:做一遍DFS,用dfn[i]表示编号为i的节点在DFS过程中的访问序号(也可以叫做开始时间)用low[i]表示i节点DFS过程中i的下方节点所能到达的开始时间最早的节点的开始时间。初始时dfn[i]=low[i]在DFS过程中会形成一搜索树。在搜索树上越先遍历到的节点,显然dfn的值就越小。D ...
分类:
编程语言 时间:
2016-04-17 17:32:11
阅读次数:
137
题目链接: http://poj.org/problem?id=1330 题意: 给你一颗有根树,最后输入一对数(a,b),叫你求a和b的公共祖先。 裸的lca,数据也很小,拿来练手不错。 题解: 1、tarjan_lca,离线,线性时间复杂度 代码: 1 #include<iostream> 2 ...
分类:
其他好文 时间:
2016-04-13 01:56:46
阅读次数:
148
一、模板 (1)tarjan模板 二、练习 1、【CodeForces 427C】 Checkposts 题意:n(1<=n<=10^5)个城市,m(1<=m<=10^5)条单向的路,现在要放一些保安来管理这n个城市,如果在第i个城市放保安,需要花费a[i](0<=a[i]<=10^9)的钱,如果城 ...
分类:
其他好文 时间:
2016-04-13 00:13:46
阅读次数:
176
无意中想起图的强连通分量来,之前也一直想写所以今天决定来填这个坑。PS:由于本人比较懒,之前做过一个讲解的PPT,不过那是好遥远之前,年代已久早已失传,所以本文里的图来自网络。以后周末都用来填坑也挺好。 分割线 在有向图G中,如果两个顶点间至少存在一条路径,那么这两个顶点就是强连通(strongly ...
分类:
编程语言 时间:
2016-04-12 01:50:24
阅读次数:
560
说到以Tarjan命名的算法,我们经常提到的有3个,其中就包括本文所介绍的求强连通分量的Tarjan算法。而提出此算法的普林斯顿大学的Robert E Tarjan教授也是1986年的图灵奖获得者(具体原因请看本博“历届图灵奖得主”一文)。 首先明确几个概念。 关于Tarjan算法的伪代码和流程演示 ...
分类:
编程语言 时间:
2016-04-12 00:13:12
阅读次数:
180