E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
强连通分量(tarjan算法)
BZOJ 1093 最大半联通子图
强连通分量
缩点+拓扑排序dp
题意:链接.方法:
强连通分量
tarjan缩点+拓扑dp.样例图: 解析: 这题的题意读明白后紧接着对样例做分析样例输出的33是代表最多有三个点,有三个有三个点的情况。
wzq_QwQ
·
2015-03-19 15:00
拓扑
Tarjan
强联通分量
BZOJ 2438 杀人游戏 强联通分量tarjan缩点
每一个人是杀手的概率是1/n(这是毋庸置疑的) {1,2,3}是一个
强连通分量
,如果我们从1开始查询,那么他是杀手的概率是1/n,但是只要知道了1,我们就可
wzq_QwQ
·
2015-03-18 19:00
强联通分量
[算法导论]
强连通分量
@ Python
class Graph: def __init__(self): self.V = [] class Vertex: def __init__(self, x): self.key = x self.color = 'white' self.d = 10000 self.f = 10
·
2015-03-16 22:00
python
Tarjan算法
--有向图
强连通分量
算法
//www.byvoid.com/blog/scc-tarjan/我的算法库:https://github.com/linyiqun/lyq-algorithms-lib算法介绍正如标题所介绍的那样,
Tarjan
Android路上的人
·
2015-03-14 10:29
算法
Tarjan算法
--有向图
强连通分量
算法
//www.byvoid.com/blog/scc-tarjan/我的算法库:https://github.com/linyiqun/lyq-algorithms-lib算法介绍正如标题所介绍的那样,
Tarjan
Androidlushangderen
·
2015-03-14 10:00
算法
DFS
(
强连通分量
+拓扑排序)
题目地址:POJ2762先缩点,然后判断拓扑网络每层的个数是否为1(我承认如果事先不知道这题需要拓扑排序我是想不出来这点的。。。)。因为假如有一层为2的话,那么从此之后这两个岔路的点就不可能从一点到另一点的。代码如下:#include #include #include #include #include #include #include #include #include usingnames
u013013910
·
2015-03-13 20:00
编程
算法
ACM
拓扑排序
强连通分量
POJ 2375 Cow Ski Area (
强连通分量
)
注意,当
强连通分量
只有一个的时候,答案是0,而不是1.代码如下:#include #include #include #include #include #include #include #include
u013013910
·
2015-03-12 19:00
编程
算法
ACM
强连通分量
POJ 2186 Popular Cows (
强连通分量
)
题目地址:POJ2186先用
强连通分量
缩点,然后形成一棵树。我第一次用的判定条件是入度为分量数-1。虽然这种情况下确实正确。但是在树中也是有间接关系的。这个条件并不是充分必要条件。
u013013910
·
2015-03-12 16:00
编程
算法
ACM
强连通分量
POJ 2553 The Bottom of a Graph (
强连通分量
)
对于一个
强连通分量
来说,所有的点都符合这一条件,但是如果这个分量还连接其他分量的话,则肯定都不是sink。所以只需要找出度为0的
强连通分量
即可。
u013013910
·
2015-03-12 15:00
编程
算法
ACM
强连通分量
HDU 3639 Hawk-and-Chicken (
强连通分量
+树形DP)
题目地址:HDU3639先用
强连通分量
缩点,缩点之后,再重新按缩点之后的块逆序构图,每个块的值是里边缩的点的个数,那么得到选票的最大的一定是重新构图后入度为0的块,然后求出来找最大值即可。
u013013910
·
2015-03-06 19:00
编程
算法
ACM
codeforces
强连通
poj 3160/3249
强连通分量
+dp(SPFA)(正的评价值才发礼物)
思路:首先可以证明在一个
强连通分量
中可以获得所有正的权值并舍弃所有负的权值。然后通过缩点形成D
dumeichen
·
2015-03-05 12:00
poj 3114
强连通分量
+最短路(间谍通信)
思路:属于同一个
强连通分量
的点就是属于同一个国家了。然后进行缩点,在缩点之后的图上求最短路即可。一开始看到多组查询而且点数不多就写了Floyd,但是TLE。随后改成每次查询就来一次SPFA,这样AC。
dumeichen
·
2015-03-04 22:00
poj 2762
强连通分量
+拓扑排序(判断图是否为单向连通)
(注意单向连通和弱连通的区别:前者是图中任意两点u和v,或者有uv路或者有vu路;后者是有向图的基图是连通图)思路:先求出
强连通分量
,然后判断拓扑排序是否为一。
dumeichen
·
2015-03-01 15:08
图论——强连通分量
割点
割边
图论——拓扑排序
poj 2762
强连通分量
+拓扑排序(判断图是否为单向连通)
(注意单向连通和弱连通的区别:前者是图中任意两点u和v,或者有uv路或者有vu路;后者是有向图的基图是连通图)思路:先求出
强连通分量
,然后判断拓扑排序是否为一。
dumeichen
·
2015-03-01 15:00
poj 2553(3180) tarjan
强连通分量
(找图的“sink”点)
看了别人的解答是求点数大于等于2的
强连通分量
的个数,可是为什么呢?思路:依题意,所求即求出
强连通分量
缩点后出度为0的那些
强连通分量
中得点。用
tarjan算法
即可。
dumeichen
·
2015-03-01 10:00
有向图
强连通分量
的
Tarjan算法
转自:https://www.byvoid.com/blog/scc-tarjan[有向图
强连通分量
]在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(stronglyconnected)
guoguo_dreamfly
·
2015-03-01 09:00
Uva 796 求桥
com_onlinejudge&Itemid=8&page=show_problem&problem=737/*** Uva796求桥 题目要求:输出题目中所有的桥,按其所连接的点从小到大的顺序输出 解题思路:
tarjan
u013573047
·
2015-02-27 18:00
hdu 4635
强连通分量
+缩点
http://acm.hdu.edu.cn/showproblem.php?pid=4635ProblemDescriptionGiveasimpledirectedgraphwithNnodesandMedges.Pleasetellmethemaximumnumberoftheedgesyoucanaddthatthegraphisstillasimpledirectedgraph.Also,
u013573047
·
2015-02-26 17:00
HDU 3072 Intelligence System (
强连通分量
)
题目地址:HDU3072这题一开始理解错题目意思了。。(不得不吐槽一下题目意思确实不好理解。。)用的强连通+最小生成树做的。。。然后错了好多遍。。。sad。。题目意思是从一个给定点向其他所有点通信的最少花费,那么入度为0的点肯定是那个给定点。然后对于其它点,枚举就好了。找一个到他花费最少的点的花费。代码如下:#include #include #include #include #include
u013013910
·
2015-02-22 22:00
编程
算法
ACM
强连通
HDU 1827 Summer Holiday (
强连通分量
)
题目地址:HDU1827先缩点,缩完点后,找出入度为0的块就是需要传递的块。然后用块中花费最少的来当代表块中的花费。累加起来就行了。代码如下:#include #include #include #include #include #include #include #include #include usingnamespacestd; #defineLL__int64 #definepiaco
u013013910
·
2015-02-22 22:00
编程
算法
ACM
强连通
[POJ 3694]Network(Tarjan+并查集+LCA 动态加边求图中桥的个数)
1≤|V|≤100000,1≤|E|≤200000,1≤q≤1000思路对于初始的图,用
tarjan算法
生成一棵DFS树以及其DFS序,并同时求出最开始时整张图中的桥的个数,将除了
qpswwww
·
2015-02-21 11:00
动态图
POJ3114 Countries in War【
强连通分量
】【最短路径】
题目链接:http://poj.org/problem?id=3114题目大意:间谍在战争期间想要传递一份谍报回国,谍报可以在邮局之间传递,但这种传递是单向的,并且会小号一些时间。但是如果两个邮局在同一个国家的话,那么谍报在这两个邮局之间传递是不消耗时间的,可以立即到达。如果几个邮局发出的谍报可以通过一些路径相互到达,那么这些邮局就属于一个国家。那么问题来了:给出一个起点和终点,问最快什么时候能够
u011676797
·
2015-02-14 21:00
POJ3592 Instantaneous Transference【
强连通分量
】【最长路】
题目链接:http://poj.org/problem?id=3592题目大意:有一个N*M的矩阵地图,矩阵中用了多种字符代表不同的地形,如果是数字X(0~9),则表示该区域为矿区,有X单位的矿产。如果是"*",则表示该区域为传送点,并且对应唯一一个目标坐标。如果是"#",,则表示该区域为山区,矿车不能进入。现在矿车的出发点在坐标(0,0)点。并且(0,0)点一定不是"#"区域。矿车只能向右走、向
u011676797
·
2015-02-11 20:00
POJ2375 Cow Ski Area【Tarjan】【
强连通分量
】
题目链接:http://poj.org/problem?id=2375题目大意:有一片供奶牛滑雪的滑雪场,可供滑雪的区域是W(宽)*L(长)的矩阵。上边有W*L个点。规定奶牛从一个点只能向它上、下、左、右相邻的并且高度不大于它的点运动。现在想要在某些点对之间架设缆车,使得奶牛可以从较低的地方想较高的地方运动,那么问题来了:最少需要多少辆这样的缆车就可以使奶牛从每个点运动到可供滑雪区域的每个角落。思
u011676797
·
2015-02-04 11:00
poj 1904 King's Quest
强连通分量
讲一下建图过程,题目给出了我们一组匹配match[i] 。对于这一组匹配好的解,我们建边i->j, 对于能匹配但是不是题目给出的匹配的边,建边j->i; 那么对于一个son和一个gril,如果属于同一个强连通且能过匹配的就一定是满足条件的。VIEWCODE#include #include #include #include #include #include #include #incl
u012127882
·
2015-02-03 11:00
ACM
图论
强连通
POJ1236 Network of Schools【Tarjan】【
强连通分量
】
题目链接:http://poj.org/problem?id=1236题目大意:N台电脑之间能够通过有向边(u,v)从第u台电脑传输文件到第v台电脑。如果给第u台电脑投放一个文件,那么这个文件就能通过有向边传输到第v台电脑上,给你N台电脑的连接情况。那么问题来了:1、最少向这N台电脑中的几台电脑投放文件,就能使N台电脑都能接收到文件。2、最少向这N台电脑构成的图中添加几条边,使只向一台电脑投放文件
u011676797
·
2015-02-03 10:00
BZOJ1051 [HAOI2006]受欢迎的牛(
强连通分量
+缩点)
题目大意:给出一个有向图,求有多少个结点能被任意一个结点到达如果图无环,当出度为0的结点只有一个时(受欢迎的牛就是这头),问题有解,否则无解(几个出度为0的结点不会到达对方)如果图有环,由于同一个
强连通分量
中的结点相互可达
cjk_cjk
·
2015-02-02 22:17
图的DFS
BZOJ1051 [HAOI2006]受欢迎的牛(
强连通分量
+缩点)
题目大意:给出一个有向图,求有多少个结点能被任意一个结点到达 如果图无环,当出度为0的结点只有一个时(受欢迎的牛就是这头),问题有解,否则无解(几个出度为0的结点不会到达对方)如果图有环,由于同一个
强连通分量
中的结点相互可达
cjk_cjk
·
2015-02-02 22:00
图论
DFS
强连通分量
poj 3160 Father Christmas flymouse 强连通+dp
实际上集合内的每个点是相同的,这样的集合就是一个
强连通分量
。那么我们就可以用tarjin算法进行强连通缩点,最后形成一个dag的图。在dag的图上面进行dp。可以先用拓扑排序后dp。
u012127882
·
2015-02-02 19:00
ACM
poj
图论
强连通
tarjin
POJ2186 Popular Cows【Tarjan】【
强连通分量
】
题目连接:http://poj.org/problem?id=2186题目大意:每头奶牛都希望自己成为最欢迎的那头牛。给你N头牛,M个崇拜关系(A,B)。意思是牛A崇拜牛B。特别是,如果牛A崇拜牛B,牛B崇拜牛C,那么牛A也崇拜牛C。那么问题来了:请计算出被所有牛崇拜的牛的个数。思路:把崇拜关系(A,B)看做是一条有向边,并且,我们发现牛的崇拜关系具有传递性。那么只要牛A有一条路径连向牛B,就可以
u011676797
·
2015-02-02 17:00
hdu 1269 强连通+并查集
所谓强连通,就是对于一个有向图,若一个集合内任意2点都能过互相达,于是这个几何就是一个
强连通分量
。 对于任意图,都可以分解人多个不相交的强连通集合。
u012127882
·
2015-02-02 15:00
图论
强连通
tarjin
HDU 4694 Important Sisters
的关键点的编号和解题思路:这题是2013Multi-UniversityTrainingContest9的题目,官方题解是用bitset或者floyd乱搞然而丁神告诉我们这题是一题裸的Lengauer_
Tarjan
u013007900
·
2015-01-30 10:00
POJ2186 Popular Cows【Kosaraju】【
强连通分量
】
PopularCowsTimeLimit:2000MSMemoryLimit:65536KTotalSubmissions:24266Accepted:9954DescriptionEverycow'sdreamistobecomethemostpopularcowintheherd.InaherdofN(1 #include #include #include usingnamespacestd
u011676797
·
2015-01-29 19:00
Kitayuta's Technology【
强连通分量
,弱联通分量】
题目链接:http://codeforces.com/contest/505/problem/D题目大意:在一个图中,有n个顶点,给出m对数字(u,v)表示顶点u和顶点v必须直接或者间接相连,让你构造一个这样的图,输出最少需要多少条边。分析:毫无疑问,n个顶点的话,我们最多可以用n条边,使得n个顶点构成一个环,满足所有的情况(任意两点都是联通的),但是这并不一定是最少的边。于是我们还需要找一个方法
u013912596
·
2015-01-28 17:00
C++
ACM
图论
DFS
codeforces
LCA离线
tarjan算法
模板
//并查集记录父亲的数组. intfather[MAXN]; //并查集的查找函数,有路径压缩功能. intfind(intx) { returnfather[x]==x?x:father[x]=find(father[x]); } //采用邻接表存储 struct { intv,next,lca,u; }e[2][MAXN<<2]; //分别记录边对和查询数对 inthead[2][MAX
qq_24451605
·
2015-01-25 14:00
C++
并查集
LCA
[kuangbin带你飞]专题九 连通图 题解报告
tarjanA-NetworkofSchools原题地址本题有2个问题,第一个是要算最少要给多少个点软件,才能使所有点都可以收到副本第二个是要算最少加多少条边,使得图变成强连通1:tarjan求强连通,然后缩点,计算入度为0的
强连通分量
tokers
·
2015-01-22 17:58
图论
算法
[kuangbin带你飞]专题九 连通图 题解报告
tarjanA-NetworkofSchools 原题地址本题有2个问题,第一个是要算最少要给多少个点软件,才能使所有点都可以收到副本第二个是要算最少加多少条边,使得图变成强连通1:tarjan求强连通,然后缩点,计算入度为0的
强连通分量
Guard_Mine
·
2015-01-22 17:00
dsa算法(17)
1.3.2.2.3.Lengauer-
Tarjan算法
第四步在第四步,240行的DT.Vertex[i]得到的是序号为i的节点。
wuhui_gdnt
·
2015-01-15 13:00
算法
DSA
compiler
编译器
llvm
dsa算法(16)
1.3.2.2.2.Lengauer-
Tarjan算法
第二、第三步在174行,GraphTraits::size(&F)返回F所代表的函数中的基本块的个数,但因为isPostDominator返回false
wuhui_gdnt
·
2015-01-15 13:00
算法
DSA
compiler
编译器
llvm
【BZOJ1093】【ZJOI2007】最大半连通子图
强连通分量
缩点+sort去重边+拓扑排序
转载请注明出处:http://blog.csdn.net/vmurder/article/details/42610705其实我就是觉得原创的访问量比未授权盗版多有点不爽233。。。题解:首先缩个点是必然,然后随便想想就知道缩点后需要最后是一条链,也就是——缩点后求拓扑图最长路以及方案数。呃,去重的部分我重标号排了个序水过。代码:#include #include #include #includ
Vmurder
·
2015-01-11 14:00
最长路
ZJOI2007
最大半连通子图
去重边
BZOJ1093
【BZOJ1179】【Apio2009】Atm
强连通分量
缩点+拓扑DP/拓扑最长路 kosaraju+tarjan+dfs转非递归三种代码
题解:首先第一个阶段,可以写kosaraju、也可以写tarjan。这两种还都分递归和dfs转非递归。----------------------------------四种方案。第二个阶段,可以写拓扑DP也可以写最长路----------------------------------乘上之前的,,八种方案。本文写了kosaraju递归版,tarjan递归版,kosaraju非递归版。……只怪学
Vmurder
·
2015-01-10 14:00
ATM
Kosaraju
Apio2009
非递归dfs
BZOJ1179
HDU 1269 迷宫城堡(强连通图的判定)
因为不要求找出所有的
强连通分量
,所以这里只是借用了kosaraju的思想,然后本题的解答简化的异常简单。当然后面我也用tarjan做了一下,代码一同附上。迷宫城堡TimeLimit:200
iaccepted
·
2015-01-06 12:09
ACM-图论
HDU 1269 迷宫城堡(强连通图的判定)
因为不要求找出所有的
强连通分量
,所以这里只是借用了kosaraju的思想,然后本题的解答简化的异常简单。当然后面我也用tarjan做了一下,代码一同附上。迷宫城堡TimeLimit:200
IAccepted
·
2015-01-06 12:00
C++
算法
HDU
hdu1269
dfs非递归
POJ 3713 Transferring Sylla 题解 《挑战程序设计竞赛》
著名的
Tarjan算法
可以求解连通和割点,再枚举删除一个点就能达到三连通的目的。先看用例2,是由用例1去掉一条边而变成非三连通图的:至少造成了2和3非三
hankcs
·
2015-01-01 23:00
HDU4685 Prince and Princess 完美匹配+强连通
那题是先建各条喜欢关系的边,然后在由被选择的公主连一条边到与之配对的王子,强连通之后如果一个王子和一个公主在一个
强连通分量
中,那么他
u014569598
·
2014-12-18 23:00
NYOJ-120校园网络【
强连通分量
缩点&&tarjan】
校园网络时间限制:3000 ms | 内存限制:65535 KB难度:5描述南阳理工学院共有M个系,分别编号1~M,其中各个系之间达成有一定的协议,如果某系有新软件可用时,该系将允许一些其它的系复制并使用该软件。但该允许关系是单向的,即:A系允许B系使用A的软件时,B未必一定允许A使用B的软件。现在,请你写一个程序,根据各个系之间达成的协议情况,计算出最少需要添加多少个两系之间的这种允许关系,才能
a915800048
·
2014-12-17 20:00
强连通分量
nyoj
tarjan算法
[图论] LCA(最近公共祖先)Tarjan 离线算法
Tarjan算法
的复杂度为O(N+Q),Q为询问的次数.由于是离线算法,所以要保存输入的信息,次序问题。 若两个结点u、v分别分布于某节点t的左右子树,那么此节点t即为u和v的最近公共祖先。
sr19930829
·
2014-12-09 21:00
[图论] 有向图
强连通分量
(kosaraju算法,
Tarjan算法
)
记录自己的想法:在有向图中,如果一些顶点中任意两个顶点都能互相到达(间接或直接),那么这些顶点就构成了一个
强连通分量
,如果一个顶点没有出度,即它不能到达其他任何顶点,那么该顶点自己就是一个
强连通分量
。
sr19930829
·
2014-12-09 09:00
强连通分量
强连通汇总
专题挂在虚拟oj hust上了传送门:我飞来飞去hdu 1269 判断
强连通分量
的个数,如果是一个就yes,否则no hdu 2767 判断最少加入几条边使他变为连通图,先缩点,再求入度和出度为0的点几个
u013076044
·
2014-12-05 23:00
有向图
图论
强连通
hdu 3594
强连通分量
加环
传送门:Cactus判断给定的有向图是否满足1.强连通2每一条边属于且仅属于一个环?YES:NO存在有两种情况(yy一下)1.他的子节点在栈中2.他的子节点的最早的时间戳不是他#include #include #include #include #include usingnamespacestd; #defineN20005 stacksta; vectormp[N]; intdfn[N];
u013076044
·
2014-12-04 20:00
栈
图论
DFS
上一页
28
29
30
31
32
33
34
35
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他