首先认识一下01邻接矩阵k次幂的意义:经过k条边(x,y)之间的路径条数 所以可以把矩阵当成邻接矩阵,全是 0的话意味着两两之间都能相连,也就是整个都要在一个强连通分量里,所以直接tarjan染色,如果只有一个色块的话就是YES否则都是NO(其实应该能更简单一些,不过tarjan比较顺手) 还有就是 ...
分类:
其他好文 时间:
2018-07-07 14:29:44
阅读次数:
145
思维难度不大,关键考代码实现能力。一些细节还是很妙的。 Description 一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:?u,v∈V,满足u→v或v→u,即对于图中任意两点u,v,存在一条u到v的有向路径或者从v到u的有向路径。若G'=(V',E')满足V'? ...
分类:
编程语言 时间:
2018-07-04 21:38:49
阅读次数:
167
【模板】割点 割点集合:一个顶点集合V,删除该集合的所有定点以及与这些顶点相连的边后,原图不连通,就称集合V为割点集合 点连通度:最小割点集合中的顶点数 边连通度:最小割边集合中的边数 割点:割点集合中唯一的一个元素 Tarjan求缩点: 一个点为缩点的条件: 1.该点为根,搜索树中有大于1个子树 ...
分类:
其他好文 时间:
2018-07-04 10:35:00
阅读次数:
168
tarjan缩点:口胡过好多题,不过从来没写过…… 什么是tarjan缩点 在搞清楚tarjan缩点之前,当然要先明白它是干什么用的。 ...
分类:
其他好文 时间:
2018-07-03 21:40:38
阅读次数:
209
$Tarjan$求割点 感觉图论是个好神奇的东西啊,有各种奇奇怪怪的算法,而且非常巧妙。 周末之前说好回来之后进行一下学术交流,于是wzx就教给我Tarjan,在这里我一定要说: $wzx AK IOI$ Tarjan发明了很多算法,而且还都叫一个名字,所以说只好用用途来区分它们。 闲聊时间结束。 ...
分类:
其他好文 时间:
2018-07-03 15:18:45
阅读次数:
222
2-SAT算法流程 1.建立选择边 2.tarjan缩点(同一块内必然同时选择),判断是否存在可行解(若存在一对对立点{2*i,2*i-1}在同一块内,则不可行) 3.把缩点后的块之间建立反向选择边,并传递不选择命令(code中用op[ ]数组记录) 4.按照拓扑序找到一为选择的点(块),标为选择, ...
分类:
其他好文 时间:
2018-07-03 11:48:27
阅读次数:
189
2018.6.25 线性筛 用时:9分钟 错误:没有特判1 LCA tarjan 用时:13分钟 正确 LCA 倍增 用时:23分钟 正确 2018.7.2 Dinic 用时:10分钟 错误: (1) 打太快inf打成了0x3f3f3f3f3 (2) 当无流时不找点了的剪枝忘记加了 Splay 用时 ...
分类:
其他好文 时间:
2018-07-02 21:38:05
阅读次数:
155
今天我这一台机器好像不知道怎么回事,好像被限速了似的。贼慢 今天晚上还有可能回去上~~ 万恶的 ~~文化课 我好郁闷呀。 不过今天也终于将点双和边双彻底理解了 %%% tarjan "题目入口" 一开始没有考虑割点能存在于不同的点双中。 考虑到了以后又在纠结如何计数233 结果发现竟然是最简单的乘法 ...
分类:
其他好文 时间:
2018-06-26 18:35:36
阅读次数:
170
转自:byvoid:有向图强连通分量的Tarjan算法 Tarjan算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树。搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的所有节点是否为一个强连通分量。 有两个概念:1.时间戳,2.追溯值 时间戳是dfs遍历节 ...
分类:
编程语言 时间:
2018-06-24 21:06:35
阅读次数:
177
题目: 迷宫城堡 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 20588 Accepted Submission(s): 8962 Probl ...
分类:
其他好文 时间:
2018-06-24 00:51:14
阅读次数:
163