
——连通分量
FeBr2
(๑•̀ㅂ•́)و✧
展开
-
强连通图 ( Tarjan,邻接矩阵 )——Network of Schools ( POJ 1236 )
题目链接: http://poj.org/problem?id=1236分析: N个学校之间有单向的网络,每个学校得到一套软件后,可以通过单向网络向周边学校发送该软件。 Q1:至少需要给多少个学校发放软件,才能使得所有的学校最终能得到软件。 Q2:至少需要增加几条传输路线,使得任意向一个学校发放软件后,经过若干次传输,所有学校都能得到软件。题解: 找强连通分量,缩点。记f[i]为缩完点原创 2016-08-01 21:44:06 · 2968 阅读 · 0 评论 -
Tarjan算法,强连通分量,双连通分量详解
链接:http://blog.youkuaiyun.com/acmmmm/article/details/16361033原创 2016-09-04 17:04:40 · 598 阅读 · 0 评论 -
Tarjan(无向图双联通分量)——hihoCoder 1184
题目链接: https://hihocoder.com/problemset/problem/1184分析: 给出一个N个点,M条边的无向图,求出其最小双联通分量的个数,每个双联通分量用其中点的最小序号表示。题解: 双联通分量的个数 = 无向图中割边的数量计算一个双联通分量里的点,用一个stack来存储再标记AC代码:/*********************************原创 2016-10-15 21:45:30 · 593 阅读 · 0 评论 -
求割点割边——hihoCoder 1183
题目链接: https://hihocoder.com/problemset/problem/1183分析: 给出一个无向图,求出图中的所有割点和割边。题解: 从任意点开始Tarjan, 设置一个父亲数组表示当前节点的根节点,和一个标记数组表示该节点有没有被Tarjan。然后开始DFS搜索遍历。割点: ①对根节点u,若其有两棵或两棵以上的子树,则该根节点u为割点。 ②对非叶子节点u(原创 2016-10-15 12:06:17 · 434 阅读 · 0 评论 -
2-SAT (判断是否有解)——Party ( HDU 3062 )
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3062分析: 给出 n对夫妻,和m对矛盾关系,每对夫妻中只能有一个人出席,判断最后能否有n个人出席,就是一个很裸的2-SAT判断有无解的问题。题解: 1.建图:#define MAXN 4002 //4倍的点//#define MAXM 8000002 //n*n/2#de原创 2016-08-02 20:07:47 · 576 阅读 · 0 评论 -
Tarjan 缩点——HDU 5934
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5934题意:给出N个炸弹的坐标爆炸半径还有引爆的花费,求爆炸所有炸弹所需要的最小花费。分析:我们发现如果炸弹A在B的爆炸范围内,同时炸弹B也在炸弹A的爆炸范围内,那么无论引爆哪一个,都会导致它们俩都爆炸,所以我们可以把A和B当做一个炸弹,花费为最小花费即可。同理,可以延伸到 n 个炸弹,如果引爆这 n 个原创 2017-05-06 10:38:31 · 460 阅读 · 0 评论