强连通分量缩点
文章平均质量分 75
chenxiaoran666
人要有梦想,不然和咸鱼有什么区别!
展开
-
【洛谷2403】[SDOI2010] 所驼门王的宝藏(Tarjan+dfs遍历)
点此看题面 大致题意:一个由R∗CR∗CR*C间矩形宫室组成的宫殿中的NNN间宫室里埋藏着宝藏。由一间宫室到达另一间宫室只能通过传送门,且只有埋有宝藏的宫室才有传送门。传送门分为3种,分别可以到达同行的任一宫室(横天门)、同列的任一宫室(纵寰门)和以该宫室为中心周围8个的任一宫室(自由门)。现在你可以从任一宫室开始寻宝,并可以在任一宫室结束寻宝,请求出最多可获得的宝藏数目(每个宝藏只能获得一次)...原创 2018-07-28 17:56:00 · 566 阅读 · 0 评论 -
【51nod1815】调查任务(Tarjan+拓扑)
点此看题面 大致题意:有N个城市由M条单向道路(图不一定联通),每个城市有一个发达程度a[i],要求你求出首都S到城市i的一条路径上的两个不同城市x,y的a[x]%a[y]的最大值(包括S和i),若无法到达输出-1。 首先,我们来考虑一个问题:若你已知若干个数,如何求出其中两个数相模后的最大值? 答案是显然的,用次大值(严格次大)去模最大值。 下面给出证明: 设这些数中的最大值为M...原创 2018-07-18 18:59:59 · 271 阅读 · 0 评论 -
【洛谷2921】 [USACO2008 Dec] 在农场万圣节(Tarjan+记忆化搜索)
点此看题面原创 2018-08-23 13:51:28 · 251 阅读 · 0 评论 -
Tarjan在图论中的应用(一)——用Tarjan来实现强连通分量缩点
Tarjan是一个著名的将强连通分量缩点的算法。 它的大致思路就是从图上任意一个点开始进行Tarjan操作(依据:强连通分量中的点可以两两到达,因此从任意一个点开始都没关系),对于每一个点,先记录它的dfs序,并将该点加入一个栈中,并标记其在栈中,然后用low[]low[]low[]数组来记录从它出发能到达的字典序最小的节点。枚举它所能到达的每一个节点,并对每一个节点进行分类讨论: 设当前节点...原创 2018-07-28 20:18:38 · 451 阅读 · 0 评论