struct SCC {
int top = 0, cntscc = 0, dfncnt = 0, n;
vector<int> dfn, low, stk, instk;
vector<int> sccnum, sccid;
vector<vector<int>> g, scc; SCC(int n_): n(n_) {
//缩点
dfn.assign(n + 1, 0);
low.assign(n + 1, 0);
stk.assign(n + 1, 0);
sccnum.assign(n + 1, 0);
sccid.assign(n + 1, 0);
instk.assign(n + 1, 0);
g.resize(n + 1);
scc.resize(n + 1);
} void add(int u, int v) {
g[u].push_back(v);
} //缩点
void tarjan(int u) {
dfn[u] = low[u] = ++dfncnt;
stk[++top] = u;
instk[u] = 1; i128 s = 0;
for (auto v : g[u]) {
if (!dfn[v]) {
tarjan(v);
low[u] = min(low[u], low[v]);
} else if (instk[v]) {
low[u] = min(low[u], dfn[v]);
}
} if (dfn[u] == low[u]) {
cntscc ++;
int v;
do {
v = stk[top --], instk[v] = 0;
sccid[v] = cntscc;
scc[cntscc].push_back(v);
sccnum[cntscc] ++;
} while (u != v);
}
} void work() {
for (int i = 1; i <= n; i ++) {
if (!dfn[i]) {
dfncnt = 0;
tarjan(i);
}
}
}
};

SCC缩点模板的更多相关文章

  1. HDU1269(有向图缩点模板题)

    迷宫城堡 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  2. 洛谷P2341 [HAOI2006]受欢迎的牛 (Tarjan,SCC缩点)

    P2341 [HAOI2006]受欢迎的牛|[模板]强连通分量 https://www.luogu.org/problem/P2341 题目描述 每头奶牛都梦想成为牛棚里的明星.被所有奶牛喜欢的奶牛就 ...

  3. BZOJ 2707: [SDOI2012]走迷宫 [高斯消元 scc缩点]

    2707: [SDOI2012]走迷宫 题意:求s走到t期望步数,\(n \le 10^4\),保证\(|SCC| \le 100\) 求scc缩点,每个scc高斯消元,scc之间直接DP 注意每次清 ...

  4. bzoj1093: [ZJOI2007]最大半连通子图 scc缩点+dag上dp

    一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:?u,v∈V,满足u→v或v→u,即对于图中任意两点u,v,存在一条u到v的有向路径或者从v到u的有向路径.若G'=(V ...

  5. HDU 3072--Intelligence System【SCC缩点新构图 &amp;&amp; 求连通全部SCC的最小费用】

    Intelligence System Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  6. UVA11324 The Lagest Lique(SCC缩点+DP)

    Given a directed graph G, con- sider the following transformation. First, create a new graph T(G) to ...

  7. POJ 2186 Popular cows(SCC 缩点)

    Every cow's dream is to become the most popular cow in the herd. In a herd of N (1 <= N <= 10, ...

  8. P2746 P2812 [USACO5.3]校园网Network of Schools[SCC缩点]

    题目描述 一些学校连入一个电脑网络.那些学校已订立了协议:每个学校都会给其它的一些学校分发软件(称作"接受学校").注意即使 B 在 A 学校的分发列表中, A 也不一定在 B 学 ...

  9. bzoj 1179 [Apio2009]Atm——SCC缩点+spfa

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1179 显然SCC缩点. 然后准备倒着拓扑序推到st,结果WA. 听TJ说dj求最长路会发生不 ...

  10. 洛谷 P6030 - [SDOI2012]走迷宫(高斯消元+SCC 缩点)

    题面传送门 之所以写个题解是因为题解区大部分题解的做法都有 bug(u1s1 周六上午在讨论区里连发两个 hack 的是我,由于我被禁言才让 ycx 代发的) 首先碰到这种期望题,我们套路地设 \(d ...

随机推荐

  1. kylin的除法函数的坑

    1.select 1/6   (整数相除除不过直接就为0) 解决办法:select cast(1 as double)/6 2.select  round (0/6,2)  (0除以任何数都是0,无法 ...

  2. ansible v2.9.9离线安装脚本

    链接:https://pan.baidu.com/s/18uxyWWyJ39i1mJJ1hb8zww?pwd=QWSC 提取码:QWSC

  3. 京东云上centos8.2 安装 consul1.11.1

    做个笔记下 -- 前言 部分内容有参考网友的,但是地址不记得了! 安装内容基本参考官网的和上一个网友的 官网地址: https://www.consul.io/downloads 以下是使用root方 ...

  4. GIS数据获取:土地利用与土壤属性、DEM、水体水系数据

      本文对目前主要的土壤属性.地表覆盖.数字高程模型与水体水系矢量数据获取网站加以整理与介绍.   本文为"GIS数据获取整理"专栏中第三篇独立博客,因此本文全部标题均由" ...

  5. .NET6 个人博客-推荐文章加载优化

    个人博客-推荐文章加载优化 前言 随着博客文章越来越多,那么推荐的文章也是越来越多,之前推荐文章是只推荐8篇,但是我感觉有点少,然后也是决定加一个加载按钮,也是类似与分页的效果,点击按钮可以继续加载8 ...

  6. Android Verified Boot 2.0 AVB详解(基于Android P)

    原文地址:https://android.googlesource.com/platform/external/avb/+/master/ 译文地址:https://blog.csdn.net/sha ...

  7. 攻防世界——Misc新手练习区解题总结<4>(11、12题)

    第十一题ext3: 方法一:挂载 需要工具:kali虚拟机 下载附件后得到一个linux的系统光盘,我们用kali挂载一下 mount 123 /mnt//123为要挂载的文件名 寻找flag.txt ...

  8. win10 搭建 npm 环境

    前言 最近,根据CSDN和博客园等文章的帮助下,搭建了一个npm的环境,现在将搭建过程记录下来,留作参考. 搭建过程 下载nodejs,我是使用的zip包安装的,安装包官网地址https://node ...

  9. 可视化学习:如何用WebGL绘制3D物体

    在之前的文章中,我们使用WebGL绘制了很多二维的图形和图像,在学习2D绘图的时候,我们提过很多次关于GPU的高效渲染,但是2D图形的绘制只展示了WebGL部分的能力,WebGL更强大的地方在于,它可 ...

  10. 学习笔记--Java方法基础

    Java方法基础 那么什么是方法呢? public class MethodTest01{ public static void main(String[] args){ // 需求1:编写程序计算 ...