[BZOJ2788][Poi2012]Festival(差分约束+floyed+tarjan)

题目描述传送门题目大意:有n个正整数X1,X2,…,Xn,再给出m1+m2个限制条件,限制分为两类: 1. 给出a,b (1<=a,b<=n),要求满足Xa + 1 = Xb 2. 给出c,d (1<=c,d<=n),要求满足Xc <= Xd 在满足所有限制的条...

2017-04-18 19:10:28

阅读数 531

评论数 0

[BZOJ1123][POI2008]BLO(tarjan求点双+树形dp)

题目描述传送门 题目大意:给出一个n个点m条边的无向连通图,问去掉每一个点之后存在多少点对不连通。题解tarjan求点双联通分量,对于每一个点双建立一个虚拟的节点,然后将这个点双的所有节点都连接到这个节点上,这样就形成了一棵树的结构 容易知道这道题求的应该是去掉每一个点之后形成的联通块的每一个...

2017-04-06 15:40:13

阅读数 608

评论数 0

[BZOJ1565][NOI2009]植物大战僵尸(tarjan+最小割)

题目描述传送门题解首先有一些保护与被保护的关系是给出的,还有就是每一排前面的点可以保护后面的点 从保护的点向被保护的点连边 可以发现,如果一个强连通分量的大小大于1,那么这个强连通分量里的所有点都不可能被打到。并且如果有一个点不可能被打到,它能到达的点也都不可能被打到 把不可能被打到的点都剔...

2017-03-04 19:07:52

阅读数 622

评论数 0

[BZOJ2707][SDOI2012]走迷宫(tarjan+概率期望+高斯消元)

题目描述传送门题解刚开始题意理解错了…或者说我对期望的理解本来就不是很好… 首先考虑图是一个DAG的情况 如果除了终点之外还有出度为0的点,那么答案为INF(因为有概率不走到终点) 然后令f(i)f(i)表示从点i走到终点的期望步数,那么f(i)=∑(i,v)∈E(f(v)+1)∗out(i...

2017-03-03 14:17:25

阅读数 1232

评论数 2

[POJ1523]SPF(tarjan求割点)

题目描述传送门 题意:无向图求割点数以及去掉这个割点了之后形成的连通块个数。题解ans[x]表示的是x点的后代能形成的连通块个数。如果x为第一个访问的点,那么连通块个数即为ans[x],如果x不是第一个访问的点,那么连通块个数为ans[x]+1,也就是说加上了来的时候的那个连通块。代码#incl...

2016-11-07 16:00:14

阅读数 419

评论数 0

[POJ1144]Network(tarjan求割点)

题目描述传送门 题意:求一个无向图中割点的数量。题解tarjan求割点模板题。 dfn表示点x的时间戳,low表示点x通过其后代最早能到达的点,is_cut表示点x的后代最多能有多少个连通块。 假设一个点是割点,如果这个点是第一个被访问点,那么如果它后代能形成一个以上的连通块的话它就是割点。...

2016-11-07 15:55:24

阅读数 372

评论数 0

[POJ3694]Network(tarjan+链剖)

题目描述传送门 题意:首先给出一个无向图。每一次询问向这个图里加一条边,求加了这条边之后图中的桥的个数。题解首先tarjan将所有的双连通分量缩成一个点,形成一棵树,每一条树边都是桥边。每连一条边实际上是将这条树链上的所有边都变成非桥边。可以用树链剖分来实现。代码#include<iost...

2016-11-06 23:08:01

阅读数 260

评论数 0

[POJ3177]Redundant Paths(tarjan求边双)

题目描述传送门 题意:给出一个无向图,求最少加多少条边,使这个图成为边双连通图。题解将所有的边双连通分量缩点,然后就能形成一个无向无环图(树)。 答案为(树中叶节点的个数+1)/2,也就是说,将叶节点每两个连一条边,使之形成环。 注意tarjan求双连通分量中,重边可以更新,但是双向边的父边...

2016-11-06 19:37:57

阅读数 496

评论数 0

[BZOJ3887][Usaco2015 Jan]Grass Cownoisseur(tarjan+spfa)

题目描述传送门题解边是可以重复走的,所以在同一个强连通分量里,无论从那个点进入从哪个点出,所有的点一定能被一条路走到。 那么首先用tarjan将所有的强连通分量缩成一个点,每个点的权为该强连通分量中点的个数。然后我们考虑将一条边反置。 强连通分量里的边反置是没有价值的,所以只需要考虑DAG里的...

2016-11-04 13:00:34

阅读数 633

评论数 0

[BZOJ1179][Apio2009]Atm(tarjan+spfa)

题目描述传送门题解首先将所有的强连通分量缩成一个点,形成一个DAG。然后在这个DAG上用spfa求最长路就行了。代码#include<iostream> #include<cstring> #include<cstdio> #include<queue&g...

2016-11-04 12:52:19

阅读数 504

评论数 0

tarjan相关算法 学习笔记

链接 有向图强连通分量的Tarjan算法 图的割点、桥与双连通分支

2016-11-04 09:36:19

阅读数 528

评论数 0

[BZOJ2208][Jsoi2010]连通数(dfs||tarjan+拓扑序+dp)

题目描述传送门题解看范围很小,O(n2)O(n^2)暴力就可以做啊= =BZOJ上跑到10s+的比比皆是,事实证明很多人都这样水掉了,而且这样的暴力是卡不掉的。 其实还有一种更高级的做法,就是tarjan+拓扑序+dp。首先将整个图缩点,同一个强连通分量中的点两两互达,所以答案统计为size2i...

2016-11-01 23:03:39

阅读数 629

评论数 0

[BZOJ1051][HAOI2006]受欢迎的牛(tarjan)

题目描述传送门题解求出度为0的连通分量的个数,如果个数为1就输出这个强连通分量中点的个数,否则输出0。代码#include<algorithm> #include<iostream> #include<cstring> #include<cstdio>...

2016-11-01 16:22:25

阅读数 605

评论数 0

[HDU3639]Hawk-and-Chicken(tarjan+dfs)

题目描述传送门 题意:求有最多的能到达它的点的点集,第一行输出最多的能到达它的点,第二行输出所有满足最大值的点集。题解首先Tarjan缩点,之后反向建图,可以知道拥有最大值的点一定在入度为0的点里。 那么可以从每个入度为0的点出发dfs。 刚开始想的是正向建图然后递推到它的儿子,发现貌似有些...

2016-11-01 16:22:05

阅读数 482

评论数 4

[HDU1827]Summer Holiday(tarjan)

题目描述传送门题解首先Tarjan缩点。 Q1:求最少人数,即入度为0的点的个数。 Q2:求最小花费,需要记录每个点的最小花费,然后求入度为0的点的最小花费之和。 这个不用特判!MDZZ代码#include<iostream> #include<cstring> #i...

2016-11-01 16:21:45

阅读数 457

评论数 0

[HDU2767]Proving Equivalences(Tarjan缩点+强连通分量)

题目描述传送门 题意:给出一个有向图,要求加最少的边至强连通。题解首先tarjan缩点,求入度为0和出度为0的点的数目,取max即为答案。 很好理解,从出度为0的点向入度为0的点连边,剩余的要多连。 注意一定要特判整个图强连通的情况。代码#include<iostream> #i...

2016-11-01 16:21:23

阅读数 373

评论数 0

[POJ1236]Network of Schools(Tarjan缩点+强连通分量)

题目描述传送门题解Q1:求入度为0的强连通分量的个数; Q2:入度为0的强连通分量的个数与出度为0的强连通分量的个数取max Q2注意特判cnt为1的情况。代码#include<iostream> #include<cstring> #include<cstdio...

2016-11-01 16:20:52

阅读数 393

评论数 0

[HDU1269]迷宫城堡(Tarjan求强连通分量)

一生中你唯一需要回头的时候,是为了看看自己到底走了多远。

2016-08-20 15:35:07

阅读数 430

评论数 0

[HDU3861]The King's Problem(Tarjan缩点+二分图匹配)

春天的道路依然充满泥泞。

2016-05-26 18:48:53

阅读数 526

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭