tarjan
文章平均质量分 66
Faithfully__xly
这个作者很懒,什么都没留下…
展开
-
0813-割点详讲
今天这个割点快要把我搞死了,不过最后发现还是很简单的,所以为了防止我以后忘记,我打算好好的尽可能详尽的写一篇博客在开始今天的讲解之前,你需要有一些Tarjan算法的基础割点定义在一个无向连通图中,如果将其中一个点以及所有连接该点的边去掉,图不再连通,那么这个点就叫做割点(cut vertex / articulation point)。例如:在下图中,0、3是割点,因为将0和3中任...原创 2018-08-13 18:09:07 · 397 阅读 · 0 评论 -
0926-Tarjan缩点-间谍网络(luogu P1262)
传送门 分析很明显,这道题与节点的度有关。如果一个点的入度为0,则我们必然要贿赂他。但是如果单纯的考虑度就错了。我们忽略了一种入度全部大于0的情况——环。样例就是一个例子。这时如果我们再拓扑找环再去找最小值,我们就会花大量时间(毕竟边很多)。这时就要用到Tarjan缩点。Tarjan是一种很高效的求解有向图的强连通分量的算法,但是它的主要应用之一是缩点,也就是把整个强连通分量的一定...原创 2018-09-26 12:12:29 · 123 阅读 · 0 评论 -
【2018/10/04】T3 - 边双连通分量+树形dp - 航班
航班描述L因为业务繁忙,经常会到处出差。因为他是航空公司的优质客户,于是某个航空公司给了他一个优惠券。他可以利用这个优惠券在任何一个国家内的任意城市间免费旅行,当他的路线跨国才会产生费用。L有一个航空公司的价格表与航线。而且每个城市出发都能到所有的城市,2个城市间可能有不止一个航班,一个国家内的2个城市间一定有不同的路线,但是不同国家的城市间只有一条路线。L想知道从每个城市出发到产生费...原创 2018-10-04 16:35:23 · 311 阅读 · 0 评论 -
1018 - 强联通Tarjan - 抢掠计划(luogu 3627)
传送门 分析由于题目中说了,我们可以重复走一些路口,所以对于一个联通的部分,我们将其缩为一个点,所有可取的钱数作为它的点权这样子,dfs一遍找到最大的值当然不止我口胡的那么简单,还有一些细节要注意然而你也不用注意这些细节,因为这样会TLE(写了一发,T了三个点)这样做主要耗时还是在dfs求最大值上,那我们就想办法换一种思路将点权移做边权,这样用SPFA跑一个最长...原创 2018-10-18 11:04:05 · 169 阅读 · 0 评论 -
1027 - Tarjan之点双连通分量 - 矿场搭建[HNOI2012]
传送门Prereading这是自从暑假学了Tarjan的无向图连通性后,第一次实干感觉有点感觉Analysis如果一个联通块中不含割点,那么在这个联通块内就应该设置2个出口(万一有一个被炸了),方案数就是Csze2C_{sze}^2Csze2如果联通块中含有1个割点,那么在这个联通块内就应该设置1个出口(炸掉割点or炸掉块内出口,都可以走另一边),方案数就是szeszesze的大小...原创 2018-10-28 09:39:36 · 111 阅读 · 0 评论 -
1023 - Tarjan之割点 - Network(POJ 1144)
传送门分析日敲模板……代码#include<cstdio>#include<cstring>#include<algorithm>#include<stack>#include<iostream>#define N 2000005using namespace std;int n;int nxt[N],to[N],...原创 2018-10-23 23:39:38 · 96 阅读 · 0 评论 -
1024 - Tarjan之割点 - BLO(BZOJ1123)
传送门分析很容易发现如果删除的点不是一个割点的话,它对答案的贡献就只有2*(n-1)(和除自己以外的所有点断开了)考虑是割点的话,如果把与割点相连的所有边都去掉,则图将变成很多个联通块,而这些联通块只会有三种形态1.割点2.与割点相连的子节点和这些子节点的儿子3.除开上面的点,剩下的点对于每一个联通块,其对答案的贡献就是(设联通块的大小为sze[u])sze[u]∗(n−sze[...原创 2018-10-24 14:02:34 · 161 阅读 · 0 评论 -
拓扑排序|Tarjan - 传话 「CODEVS1506」
题目描述[问题描述]兴趣小组的同学来自各个学校,为了增加友谊,晚会上又进行了一个传话游戏,如果a认识b,那么a收到某个消息,就会把这个消息传给b,以及所有a认识的人。如果a认识b,b不一定认识a。所有人从1到n编号,给出所有“认识”关系,问如果i发布一条新消息,那么会不会经过若干次传话后,这个消息传回给了i,1<=i<=n。[输入文件]输入文件message.in中的第一行...原创 2018-11-04 14:28:06 · 260 阅读 · 0 评论 -
Tarjan缩点+拓扑排序求最长链 - 最大半连通子图「BZOJ1093」[ZJOI2007]
最大半连通子图描述一个有向图 G=(V,E)称为半连通的 (Semi-Connected),如果满足:∀u,v∈V,满足 u→v 或 v→u,即对于图中任意两点 u,v,存在一条 u到 v 的有向路径或者从 v 到 u 的有向路径。若 G′=(V′,E′)满足,E′ 是 E 中所有和 V’ 有关的边,则称 G’ 是G 的一个导出子图。若 G’ 是 G 的导出子图,且 G’ 半连通,则称 G’...原创 2018-11-04 15:18:03 · 316 阅读 · 0 评论