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
#牛客网 通知小弟 (
tarjan
+ 思维)
在战争时期,A国派出了许多间谍到其他国家去收集情报。因为间谍需要隐秘自己的身份,所以他们之间只是单向联系。所以,某个间谍只能单向联系到一部分的间谍。同时,间谍也不知道跟他联系的是谁。HA是间谍们的老大,但他也只能联系到部分的间谍。HA现在有一项命令有告诉所有的间谍。HA想要知道他至少要告诉多少个他能联系上的间谍才能通知到所有的间谍。输入描述:有多个测试数据。对于每个测试数据:第一行为一个整数n,m
东野圭吾#
·
2020-08-15 17:51
Tarjan
HDU 4738-Caocao's Bridges-无向图找桥 DAG
Tarjan
Caocao’sBridgesProblemDescriptionCaocaowasdefeatedbyZhugeLiangandZhouYuinthebattleofChibi.Buthewouldn’tgiveup.Caocao’sarmystillwasnotgoodatwaterbattles,sohecameupwithanotheridea.Hebuiltmanyislandsinth
luonango
·
2020-08-15 16:26
ACM
Caocao's Bridges HDU -
tarjan
割边模板
I-Caocao'sBridgesHDU-4738如果在这时我的结点u有一条到v的边而且low[v]dfn[u]那么这条边即为桥,对于割点有一个等号的问题,在判断桥中如果low[v]==dfn[u]那么这意味着始末都是这个u结点的一个环而已(包括自环)没什么影响只要是环那么必然不是桥,而对于割点如果low[v]==dfn[u]那么v及其所有子结点都必须通过u结点来访问u的祖先所以u仍然是割点题意:
ID_BePosit
·
2020-08-15 13:45
图论
codeforces 51F Caterpillar
tarjan
缩点+dfs
并且其拥有一条主链使得不在链上的点到链上最近的点的距离小于2.解析:首先因为毛毛虫图没有环,所以我们可以用
tarjan
缩一下点,并计算代价。缩完点后剩下一片森林。首先考虑对一棵树如何操作。
wzq_QwQ
·
2020-08-15 12:10
Depth
First
Search
Double
Connected
Component
Simple Cycles Edges(点双连通分量||
tarjan
缩点)
http://codeforces.com/contest/962/problem/F题意:给出一个无向图,问有哪些边只属于一个简单环。思路:找到每个点双连通分量,如果一个x个点的点双连通分量正好由x条边构成,那么这些边就都只属于一个简单环#include#include#include#include#include#defineN100005#defineM200005usingnamespa
- Passerby ゛
·
2020-08-15 12:53
强连通
Codeforces 1027D(
Tarjan
缩点+贪心)
传送门题面:D.MouseHunttimelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMedicinefacultyofBerlandStateUniversityhasjustfinishedtheiradmissioncampaign.Asusual,about8
Chen_Jr_
·
2020-08-15 11:35
CodeForces
贪心
图论
Codeforces 1239 D Catowice City ——
tarjan
现在需要选出总共n个人+猫,而且至少有一个人,一只猫,问你选的人是哪些,猫是哪些题解:第一次接触
tarjan
,就是求
强联通
分量的一种方法。scc相同即在同一个
强联通
分量里。
天翼之城*
·
2020-08-15 11:13
tarjan
想法
Connected Components? CodeForces - 920E
http://codeforces.com/problemset/problem/920/E求补图的各个连通块大小智商不够直接线段树优化建图然后
tarjan
缩点幸好内存不紧。。
sunyutian1998
·
2020-08-15 11:02
线段树/树状数组/RMQ
强连通分量
Codeforces Gym 101630C Connections 强连通分量
Tarjan
ProblemC.ConnectionsInputfile:standardinputOutputfile:standardoutputTimelimit:3secondsMemorylimit:512mebibytesHardtimesarecomingtoByteland.QuantumcomputingisbecomingmainstreamandQubitlandisgoingtooccu
VampireWeekend
·
2020-08-15 11:51
tarjan/2-SAT
Codeforces Problem 711D Directed Roads(
Tarjan
判环)
此文章可以使用目录功能哟↑(点击上方[+])比赛链接→CodeforcesRound#369(Div.2)CodeforcesProblem711DDirectedRoadsAccept:0Submit:0TimeLimit:2secondsMemoryLimit:256megabytesProblemDescriptionZStheCoderandChristheBaboonhasexplore
queuelovestack
·
2020-08-15 11:33
CodeForces
最短路+
tarjan
codeforces567E President and Roads
这题出的非常有意义。题意:告诉点一个有向图,和起点s终点t。保证s能到达t。然后询问所有的边如果这条边是s到t的最短路中不能缺少的,就输出YES否则,可以将这条边的长度减小,但是最多中i能减小到1。此时最短路如果必经这条边就输出CAN减少的长度否则,就输出NO思路:先从s出发做一次最短路,保存在d1数组中。然后把边全部反转,从t出发做一次最短路,保存在d2数组中如果d1[u]+w==d1[v]且d
逍遥丶綦
·
2020-08-15 11:02
ACM_图论
Hdu 5454,Minimum Cut,最近公共祖先+dfs遍历
这道题补充了自己最近公共祖先的知识点:LCA(LowestCommonAncestors)两种求法:①离线:
tarjan
+dfs;②在线算法,还没看题意:先给定一棵n个节点的树,然后给定一个m条边的图,
lishuandao
·
2020-08-15 11:03
ACM
Codeforces 962F:
Tarjan
点双连通分量
前置技能:
Tarjan
三算法:强连通分量、点双连通分量、边双连通分量。资料:
Tarjan
三大算法之双连通分量(双连通分量)题意:给出一个无向图,求出所有只在一个简单环上出现过的边。
calabash_boy
·
2020-08-15 10:45
Codeforces
Codeforces 427C Checkposts (强连通分量
tarjan
模板)
Checkpoststimelimitpertest:2secondsmemorylimitpertest:256megabytesYourcityhasnjunctions.Therearemone-wayroadsbetweenthejunctions.Asamayorofthecity,youhavetoensurethesecurityofallthejunctions.Toensuret
_TCgogogo_
·
2020-08-15 10:31
ACM
图论
Codeforces700C Break Up(搜索+
tarjan
)
http://codeforces.com/problemset/problem/700/C题意:n个点m条边,从s到t,让你删掉最多两条边,让s和t不通,让花费最小。题解:首先要说一下,我真是太菜了,看见这题又是一脸蒙逼啊,其实这题点1000,边30000,nm的复杂度完全能过,如果我发现了这个,可能会有思路呢,知道了这个的话,就可以先找一条路出来,因为有路,所以为了不通,肯定要删除上面一条边,
Miracle_ma
·
2020-08-15 10:16
CodeForces770C【强连通分量+DFS序】
然后我就很爆炸,窝很蠢地想到了
Tarjan
,然后就处理了一下那些强连通分量,然后就是用来判断是不是在环里,不满足。
keyboarder_zsq
·
2020-08-15 10:37
codeforces
DFS
codeforces
dfs
CodeForces 160D Edges in MST (
tarjan
)
题目链接:http://codeforces.com/problemset/problem/160/D题意:给出一个n个点m条边(无自环无重边)的无向图,求问它的所有最小生成树中:哪些边在所有最小生成树中都出现、那些可能出现、那些都不出现。思路:首先有一个结论:把一个连通无向图的生成树的边按权值递增排序,称排好序的边权列表为有序边权列表,则任意两棵最小生成树的有序边权列表是相同的。因此,借助Kru
Interstellar_
·
2020-08-15 10:05
图论
Codeforces
poj3694 Network
Tarjan
+树链剖分
嗯就如上一篇所说,我们缩完点之后,就成为了一棵树,然后每个点权对应它到他的父节点的边是否狗带,然后每次LCA在链上乱跳的时候维护下清空标记就行了,qlog^2n的果然跑得快,172ms。。。。。。Problem:3694User:BPM136Memory:19208KTime:172MSLanguage:G++Result:AcceptedSourceCode/******************
BPM136
·
2020-08-15 10:46
树链剖分
图论
线段树
poj3694 Network
Tarjan
(树链剖分)
显然我们
Tarjan
桥边然后爆搞LCA。。。等等!这不是O(nq)的吗?嗯。。。。。799ms==每次缩点复杂度。。。
BPM136
·
2020-08-15 10:45
树
LCA
图论
Codeforce 505D - Mr. Kitayuta's Technology 弱联通分量+拓扑排序
=v)均满足u到v可达,v到u可达,则称此图为
强联通
。根据以上定义显然可知,
强联通
图一定也满足弱联通。此题首先我们需要找到其所有的弱联通分量。
自在_飞花
·
2020-08-15 10:48
图论
Kitayuta's Technology(
tarjan
+并查集)
题目链接:http://codeforces.com/contest/505/problem/D题解:先用
tarjan
缩点然后再用并查集注意下面这种情况‘这种情况只需要构成一个大环就行了,也就是说不需要
awow80285
·
2020-08-15 10:44
在流程图中求支配点的一种快速算法
0.说明本文译自
Tarjan
的论文:https://www.cs.princeton.edu/courses/archive/fall03/cs528/handouts/a%20fast%20algorithm
wmdcstdio
·
2020-08-15 09:02
(国庆训练) NEERC2017 C. Connections
题目链接:C.Connections题意:给定一个
强联通
分量,m条边,n个点,需要删去m-2*n个边,使得图仍为强连通分量题解:因强连通分量两点间任意可达,所以处理出,从1结点到各个节点所需要的边和从其他结点到达
weixin_30876945
·
2020-08-15 08:54
Tarjan
求强连通分量
Tarjan
算法是基于
休伯利安矿工
·
2020-08-14 21:19
Tarjan
Gym - 100712H Bridges (无向图 缩点,
Tarjan
+ 找树的直径)
题目链接题意:给你一张图,问你加了一条边之后,最少有多少桥。如果那些形成一个环的点,点之间的边都不是桥,所以要考虑把这些点缩成一个点。缩点完成后,就会形成一棵树。找到连接起来最长的边(树的直径),在用一条边把他们从头到尾连起来,那样就去掉了最多的边,剩下的就是我们要求的桥;总的来说就是,无向图缩点,然后形成树,找树的直径,再拿边的个数减去树的直径就是答案。找树的直径,一定要走两次dfs找到底层的点
Top_xiao
·
2020-08-14 17:19
图论
C++无向图连通性问题[
Tarjan
求割边]—————Bridges
题目描述:在赤壁之战中,曹操被诸葛亮和周瑜击败。但他不会放弃。曹操的军队仍然不善于水战,所以他提出了另一个想法。他在长江建造了许多岛屿,在这些岛屿的基础上,曹操的军队很容易攻击周瑜的部队。曹操还建造了连接岛屿的桥梁。如果所有岛屿都通过桥梁相连,那么曹操的军队可以在这些岛屿中非常方便地部署。周瑜无法忍受,所以他想要摧毁一些曹操的桥梁,这样一个或多个岛屿就会与其他岛屿分开。但周瑜只有一枚由诸葛亮留下的
C2020lax
·
2020-08-14 08:12
强连通分量
由LCA引发的问题--RMQ,
Tarjan
,并查集等
引入LCA问题及其在线和离线算法两个月前有一次一个电话面试问到了一个问题:“怎样求二叉树中距离两个叶子节点最近的祖先节点。”当时不会,后来在网上查了查发现是一个比较经典的题目,也有几种算法可以解决这个问题,我学习了一下,在这儿记下来。这个问题更宽泛的定义是:如何求树(不限于二叉树)中两个节点(不限于叶子节点)的最近公共祖先节点。这个问题被称为LCA(LowestCommonAncestor)问题。
qiuyang0607
·
2020-08-14 07:11
基础知识
[POJ 3694]Network(
Tarjan
+并查集+LCA 动态加边求图中桥的个数)
1≤|V|≤100000,1≤|E|≤200000,1≤q≤1000思路对于初始的图,用
tarjan
算法生成一棵DFS树以及其DFS序,并同时求出最开始时整张图中的桥的个数,将除了
我是傻叉
·
2020-08-14 07:11
ACM-ICPC
图论
传统题
动态图问题(Link-Cut
Tree等)
POJ
牛客练习赛32 D
Tarjan
无向图求桥+并查集维护
题目描述:小p和他的朋友约定好去游乐场游玩,但是他们到了游乐场后却互相找不到对方了。游乐场可以看做是一张n个点,m条道路的图,每条道路有边权wi,表示第一次经过该道路时的花费(第二次及以后经过时花费为0)。现在,小p要去找他的朋友,但他的朋友行踪很诡异,小p总是要遍历完这n个点才能找到他,同时小p希望总花费最小。找到朋友的方案可能不唯一(具体看样例解释),小p想知道在这所有的方案中,有多少条边在每
阿_波_
·
2020-08-14 07:28
Tarjan
强连通分量(超详细!!!)
二、
tarjan
算法时间复杂度是O(N+M)四条边:树枝边:D
anglanjing7414
·
2020-08-14 06:16
数据结构与算法
7_6_B题 Network题解[POJ3694] (LCA + 求桥 + 并查集)
思路先用
Tarjan
算法求桥,同时用并查集缩点,把所有非桥的边缩起来,这样剩下的就是一个只包含桥的树,在每次加边的时候通过并查集,判断两点是否在缩起来的点中,如果是则加入该边对桥的数量没有任何影响直接返回
Shufu_C
·
2020-08-14 06:04
题解
LLVM-Analysis-LoopInfo
他是一种类似于
Tarjan
的可规约流图识别(《Testingflowgraphreducibility》),不同的是LLVM是基于dom-tree的遍历,这有点像区域分析。
yeshahayes
·
2020-08-14 05:21
编译与反编译
POJ1986 Distance Queries【最近公共祖先】【
Tarjan
-LCA算法】
DistanceQueriesTimeLimit:2000MSMemoryLimit:30000KTotalSubmissions:9777Accepted:3425CaseTimeLimit:1000MSDescriptionFarmerJohn'scowsrefusedtoruninhismarathonsincehechoseapathmuchtoolongfortheirleisurely
行走少年郎
·
2020-08-14 05:43
-----
图
论
-----
最近公共祖先
并查集
ACM题解——梦想之路
倍增法在线求LCA(详解)
先贴上学习的文章:洛谷P3379题解1倍增讲解在用
Tarjan
算法求LCA时会出现超时的现象,因为是一层一层的往上跳,于是就有了用倍增法求LCA,是层地往上跳。
努力写题的tyf
·
2020-08-14 05:01
LCA
洛谷P2341 受欢迎的牛——
Tarjan
+缩点模板
又是一道
Tarjan
水题,这次经过仔细的思考,没有打错邻接表(图论已入门qwq)。还是先来说说思路吧,由题意知,就是给一张n个点,m条边的有向图,让你求出有多少个点可以由所有的点达到。
bairui0504
·
2020-08-14 04:18
tarjan
判环(51Nod - 1076)
tarjan
判环(51Nod-1076)51Nod-1076vj链接模板intDFN[maxn],low[maxn],cnt=0;boolvis[maxn],inStack[maxn];///每次使用要清空
xuziling_
·
2020-08-13 23:15
ACM
Network(
Tarjan
+缩点+LCA)
http://poj.org/problem?id=3694这题是给了一个连通图。问再加入边的过程中,桥的个数。先对原图进行双连通分支缩点。可以形成一颗树。这颗树的边都是桥。然后加入边以后,查询LCA,LCA上的桥都减掉。标记边为桥不方便,直接标记桥的终点就可以了。具体看代码吧!很好的题目#include#include#include#include#include#includeusingna
蜗牛蜗牛慢慢爬
·
2020-08-13 20:42
图论---连通图
hdu4635 Strongly connected(
tarjan
计算强连通通分量+缩点+思想)
StronglyconnectedTimeLimit:2000/1000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):2714AcceptedSubmission(s):1128ProblemDescriptionGiveasimpledirectedgraphwithNnodesandMedges.P
甄情
·
2020-08-13 19:22
【搜索】
【强连通图】
Acm竞赛
HOJ
pid=1269//版本2邻接表建图
tarjan
与上面的风格也不一样,参考的是吉林大学的代码库#include#include#include#include#defineV10001usingnamespacestd
smsmn
·
2020-08-13 18:49
POJ_强连通分支
最近公共祖先LCA(
Tarjan
(离线)算法)&& poj1330 && hdu2586
注:这篇文章关于算法解释部分参考☞:http://www.cnblogs.com/JVxie/p/4854719.html这位大佬写的特别详细,然后我在这个的基础上又增加了两道例题,更方便大家理解首先是最近公共祖先的概念(什么是最近公共祖先?):在一棵没有环的树上,每个节点肯定有其父亲节点和祖先节点,而最近公共祖先,就是两个节点在这棵树上深度最大的公共的祖先节点。换句话说,就是两个点在这棵树上距离
竟然有人也叫Webwei
·
2020-08-13 18:50
算法
Tarjan
算法
强连通分量#includeusingnamespacestd;constintMAXN=10010;intdfn[MAXN],low[MAXN],Stack[MAXN];vectorgraph[MAXN];//遍历深度以及栈顶指针(指向最后一个元素)intdeep=0,top=-1;//标记元素是否在栈中inttag[MAXN];//强连通分量个数intcnt=0;//为不同的强连通分量上色区分i
淅淅沥沥的熙
·
2020-08-13 17:35
算法
【平面图判定+2-SAT验证】BZOJ1997 [Hnoi2010]Planar
题面在这里因为平面图有一个性质,就是边数不超过3N-6所以可以首先确定边数大于3N-6的case了那么边数就成了O(n)级别的了然后是典型的2-SAT问题:每条边要么在哈密顿回路的内侧,要么在外侧
Tarjan
linkfqy
·
2020-08-13 15:07
BZOJ
2-SAT
常见OJ题解专栏
我的OI历程
NOIP2017巴蜀模拟总结
t2题意理解得不清楚,思路还是很简单,先
强联通
分量缩点,每个
强联通
分量就要用这么多次轰炸。要求一个最长的叶结点走到走不动的步数。t3出题人拼题,一个最小生成树和一个nim博弈并在一起。
itselaineZ
·
2020-08-13 14:52
Summary
NOIP
poj1144 -
tarjan
求割点
那么
tarjan
是如何求的割点的呢?如果u为割点,当且仅当满足下面的1/21、如果u为树根,那么u必须有多于1棵子树2、如果u不为树根,那么(u,v)为树枝边,当Low[v]>=DFN[u]时。
This is bill
·
2020-08-13 12:33
早起一水
模板
算法模板库
[bzoj3331][
强联通
][树上差分]压力
Description如今,路由器和交换机构建起了互联网的骨架。处在互联网的骨干位置的核心路由器典型的要处理100Gbit/s的网络流量。他们每天都生活在巨大的压力之下。小强建立了一个模型。这世界上有N个网络设备,他们之间有M个双向的链接。这个世界是连通的。在一段时间里,有Q个数据包要从一个网络设备发送到另一个网络设备。一个网络设备承受的压力有多大呢?很显然,这取决于Q个数据包各自走的路径。不过,
Rose_max
·
2020-08-13 12:19
bzoj
树上差分
强联通
Tarjan
记得每次清边vectorEdge[maxm];stackS;intDfn[maxn],Low[maxn],sccno[maxn],tclock,sccnt;//sccno代表某个点所在的强连通分量编号void
tarjan
Nemaleswang
·
2020-08-13 12:12
模板
[BZOJ5335]-[TJOI2018]智力竞赛-二分答案+可重路径覆盖
题目BZOJ5335传送门看题可戳传送门解法me觉得这个题面描述十分不清真题意就是让求可重最小链覆盖,但是题目上并没有说有没有环,所以正常写法就是先
tarjan
,然后跑一遍floyd处理连通性,最后二分答案
泉華子
·
2020-08-13 11:51
二分答案
二分图
bzoj3258 秘密任务(Dij+最小割+
tarjan
)
可以对残余网络
tarjan
缩点。如果一条边是割边,那么需要满足:1、满流边2、bel[x]!
Icefox_zhx
·
2020-08-13 11:19
bzoj
-----网络流-------
最小割
tarjan
最短路
[最小割+
Tarjan
] BZOJ1797: [Ahoi2009]Mincut 最小割
关于最小割唯一性:在残余网络上跑
Tarjan
Tarjan
。记idxidx为点xx所在SCCSCC的编号。将每个SCCSCC缩成一个点,得到的新图就只含有满流边了。
Lynstery
·
2020-08-13 11:52
强联通分量
网络流
P2017 [USACO09DEC]晕牛Dizzy Cows
开始看到被卡了,考虑
tarjan
但是又有无向边又有有向边的确不是很好做考虑全部是有向图但是没有环的DAG图,一般我们的判定方式都是用拓扑排序但是如果你把边全部搞进来,发现没法排,怎么办呢?
weixin_33766168
·
2020-08-13 11:39
上一页
7
8
9
10
11
12
13
14
下一页
按字母分类:
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
其他