这道题绝不是紫题。。。 题目的意思其实是让你求一个无向无重边图的直径。 对于求直径的问题我们以前研究过树的直径,可以两遍dfs或者两边bfs解决。 对于图显然不能这样解决,因为图上两点之间的简单路径不唯一。 那怎么解决这个问题呢? 能不能把环都搞掉呢? 于是乎,我们想到了强连通分量。 因此先用tar ...
分类:
其他好文 时间:
2018-10-24 10:54:55
阅读次数:
195
"传送门" 看到联通块,好像跟并查集、强连通分量有关系吧,仔细一看跟哪些点属于哪些块没关系,只关心联通块数量,那么应该可以用并查集做。继续看,这是一道删边的题,好像很难维护删边,我们又知道并查集是可以维护加边的,那么我们就倒过来做好了。 ...
分类:
Web程序 时间:
2018-10-19 02:19:23
阅读次数:
153
虽然是模板但是却提醒我有向图一定要 试着从每个点出发 ,不仅仅是因为图不一定连通,更有可能是只从1号点出发哪也去不了的情况 c++ include include include include include using namespace std; define debug(x) cerr ...
分类:
其他好文 时间:
2018-10-14 16:55:21
阅读次数:
124
传送门 2-SAT的板子 把每一个点拆成选0或选1 条件为$x_i$为$a$或$x_j$为$b$,那么如果$x_i$不为$a$则$x_j$必为$b$,同理$x_j$不为$b$则$x_i$必为$a$ 那么从$x_i$不为$a$的点向$x_j$为$b$的点连边,从$x_j$不为$b$的点向$x_i$为$ ...
分类:
其他好文 时间:
2018-10-14 13:47:22
阅读次数:
143
传送门 解题思路 让所有夫妇之间连男到女的边,所有情人之间连女到男的边,然后用$tarjan$,如果对于一对夫妻在强连通分量里,那么就是不稳定的,因为他们可以绕一圈。 #include<iostream> #include<cstdio> #include<cstring> #include<str ...
分类:
其他好文 时间:
2018-10-11 18:50:55
阅读次数:
122
题意 给定$n$个炸弹,每个炸弹的坐标与代价与影响范围给定,炸弹会引爆影响范围内其他所有炸弹。求引爆所有炸弹的最小代价。 分析 先做$n^2$的循环,然后建图,对$i$能引爆$j$建边$(i,j)$。然后对这个图求强连通分量并缩点,构成新的有向无环的森林。定义每个强连通分量的cost为其中包含的点的 ...
分类:
其他好文 时间:
2018-10-10 19:09:54
阅读次数:
109
题目大意:有一个$n$个点$m$条边的有向图,起点$S$,要求你添加最少的边使得$S$可以到达所有点 题解:缩点,答案就是没有入边的强连通分量个数,注意,如果起点$S$所在的强连通块没有入边则不计入答案 卡点:无 C++ Code: ...
Tarjan 算法一种由Robert Tarjan提出的求解有向图强连通分量的算法,它能做到线性时间的复杂度。(每个点只经过一次) 说到Tarjan,我们首先要输破的肯定是有向图,因为无向图没有这么一个东西 这句要从Tarjan算法的定义讲起了 我们定义: 如果两个顶点可以相互通达,则称两个顶点强连 ...
分类:
其他好文 时间:
2018-10-05 15:12:03
阅读次数:
261
【题目描述】: "[USACO15JAN]草鉴定Grass Cownoisseur" 【思路】: 首先我们先思考贝茜不走那条反边,那么对于任意强连通分量$E$易知: $\forall u,v \in E$,$\exists u \to v \ and \ v \to u$ $\because$贝茜每 ...
分类:
其他好文 时间:
2018-10-04 19:28:44
阅读次数:
182
传送门:Problem 2186 https://www.cnblogs.com/violet-acmer/p/9739990.html 题意: 每头牛都想成为牛群中的红人。 给定N头牛的牛群和M个有序对(A, B),(A, B)表示牛A认为牛B是红人,该关系具有传递性,所以如果牛A认为牛B是红人, ...
分类:
其他好文 时间:
2018-10-04 11:10:21
阅读次数:
173