``` cpp //Tarjan求割点 void tarjan(int now,int fa){ int num=0; low[now]=dfn[now]=++dfnc; for(int i=head[now];i;i=b[i].next){ int u=b[i].to; if(!dfn[u]){ ... ...
分类:
其他好文 时间:
2020-05-01 12:26:28
阅读次数:
60
题目链接 题意 给定一张左部$N$个点,右部$M$个点,$E$条边的二分图,求二分图最大匹配的非可行边的条数 题解 对二分图加入源点和汇点建图跑Dinic,得到一组最大匹配后对残量网络求强联通分量。则边$(x,y)$是非可行边的判定方法为:剩余容量为1且$x$,$y$不属于同一个强联通分量,时间复杂 ...
分类:
其他好文 时间:
2020-05-01 00:42:12
阅读次数:
59
题目 "题目" tarjan算法每次打都要翻书,于是就学了一个叫Korasaju算法的东西 程序 给定有向图,缩点,判断是不是只有一个点出度为0,是,输出,否则输出0。 ...
分类:
其他好文 时间:
2020-04-30 13:44:46
阅读次数:
50
1.dfs 树 上图右图是左图以 为起点进行 时产生的生成树。 有向图的 生成树主要有 种边(不一定全部出现): 1. 树边( ):绿色边,每次搜索找到一个还 没有访问过的结点 ( 白点 )的时候就形成了一条树边。 2. 返祖边( ):黄色边,也被叫做回边,即 指向祖先 结点( 灰点 )的边。 3. ...
分类:
其他好文 时间:
2020-04-29 21:41:38
阅读次数:
56
$\color{purple}{表格是个很重要的东西,让我们来美化一下吧!}$ DP 图论 字符串 线性DP 最短路 KMP算法 区间DP 拓扑排序 tire树 树型DP tarjan算法 序列自动机 状压DP 匈牙利算法 AC自动机 上面就是最朴素的表格了。(美化的以后更新) ...
分类:
Web程序 时间:
2020-04-25 23:28:24
阅读次数:
99
题目描述 小 z 很无聊。 小 z 要玩游戏。 小 z 有NNN个新游戏,第iii个游戏看上去的有趣程度为wiw_iwi?。 小 z 很挑,他只会玩看上去的有趣程度是自己兴奋程度整数倍的游戏。 由于游戏实际上有好玩的也有不好玩的,玩完第iii个游戏后,小 z 的兴奋程度会变为eie_iei?。 已知 ...
分类:
其他好文 时间:
2020-04-09 21:35:29
阅读次数:
88
题意: 给你n个点,和m条单向边,问你有多少点满足(G)={v∈V|?w∈V:(v→w)?(w→v)}关系,并把这些点输出(要注意的是这个关系中是蕴含关系而不是且(&&)关系) 题解: 单独一个强连通分量中的所有点是满足题目要求的但如果它连出去到了其他点那里,要么成为新的强连通分量,要么失去原有的符 ...
分类:
编程语言 时间:
2020-04-09 12:57:22
阅读次数:
68
最近公共祖先问题与Tarjan离线算法 最近公共祖先问题 树上两点的最近公共祖先问题(LCA Least Common Ancestors) 对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u和v的祖先且x的深度尽可能大。在这里,一个节点也可以是它自己的祖先。 ...
分类:
编程语言 时间:
2020-04-07 00:31:59
阅读次数:
103
题目传送门 这是一道很好的练习强联通的题目。 首先,从题中可以看到,题目的要求就是要我们求出从起点到终点是否可以经过flag = 1 的边。 由于是无向图,且要求很多,直接暴力dfs会很凌乱。 那么,我们就想到一个思路:能不能尽量把这张图缩小,标记转为点,最好成为一条一条链呢? tarjan的缩点! ...
分类:
其他好文 时间:
2020-04-04 22:41:10
阅读次数:
102
题目 原地址 解说 刚看完这道题感觉还是挺乱的,可能那时候脑子不太清醒,一度觉得自己又要重拾Tarjan了。当然最后还是发觉应该用树形DP。 (以下dp[u]代表以u为根的包括自己在内的子树的最大利润,bool g[u]表示u及其子树的方案数是否唯一,唯一则为0,否则为1,t[u]代表u的次数,v[ ...
分类:
其他好文 时间:
2020-04-04 20:56:06
阅读次数:
59