
tarjan
浅眠流转
这个作者很懒,什么都没留下…
展开
-
2695: 旅游胜地(2-SAT)
文章目录[2695: 旅游胜地](http://acm.zzuli.edu.cn/problem.php?id=2695)题目大意解题思路代码2695: 旅游胜地题目大意中文题,大意就剩略了吧。解题思路这也题看了以后感觉是二分+2-SAT但是不知道具体的怎么去建图。一直卡着。后来看了大佬的博客后突然明白了,电子竞技菜是原罪呀! 我们对于每一条边,分别判断如果 u 取a数组的值, v 取b数组的值。判断下这差值是否大于 二分枚举的值,如果大于就选择建这个边对于另外的点之间建边。每次建完图以后,判断是原创 2020-11-29 17:17:48 · 372 阅读 · 3 评论 -
Router Mesh(牛客小米邀请赛)
文章目录[Router Mesh](https://ac.nowcoder.com/acm/contest/7501/D)题目大意解题思路代码Router Mesh题目大意跟 n 个点 m 条边,问你分别删除一个点后对应这 n 个点还有几个联通块。解题思路先求出来一共有多少个连通块,然后计算每个点对应到少个割边,之后连通块的个数加上该点的割边的数量就可以了。有个坑点就是,每次第一个遍历的点,他的割边的个数会多一,需要减一下;代码#include<bits/stdc++.h>usi原创 2020-10-26 19:45:23 · 323 阅读 · 1 评论 -
Forming the Council(2-sat)
文章目录[题目链接:Forming the Council](http://lightoj.com/volume_showproblem.php?problem=1251)题目大意思路代码题目链接:Forming the Council题目大意一共有m个选民进行投票,有n个人可以被偷 整数表示他可以继续留在议会,负数希望他离开议会。这m个人一人投两票,问你能不能选出来几个人组成新的议会,使得所有人都满意,每个人满意的条件是自己的两票中至少有一票得到实现。思路典型的 2−sat2-sat2−sat原创 2020-09-07 20:57:42 · 179 阅读 · 0 评论 -
Poj-3694-Network(Tarjan+最小生成树)
文章目录Poj-3694-Network题目大意解题思路代码Poj-3694-Network题目大意给你一个n个节点m条边的连通图,问你每次给所选的两个点连线后,该连通图还有多少个桥。解题思路我们先用Tarjan进行缩点,然后统计出现在还有多少个桥,对于缩完点后的数,我们找一个点做祖先没然后每次的答案就是现有的桥数减去他们最近公共祖先的距离和-1。我们每次操作完后需要给所连接成一个环的节点全部归为一个节点。还有就是这个题,用邻接表存图会TLE的,需要链式前项星,并且有重边代码#include原创 2020-09-25 10:38:57 · 202 阅读 · 0 评论 -
HDU-4612-Warm up(求桥的个数,处理重边)
文章目录[HDU-4612-Warm up](http://acm.hdu.edu.cn/showproblem.php?pid=4612)题目大意解题思路代码HDU-4612-Warm up题目大意给你n个点,m条边。问你再添加一条边后这个图最少还剩几个桥。解题思路如果没有重边的话,这个题很好解决的,只需要tarjan缩点后求出缩点后的树的直径。但是本题有重边,这就增加了解题的难度。我可以用一个标记,在缩点的时候标记一下,如果遇到父亲节点两次那说明就是一个重边了,我们更新其low值即可代码原创 2020-09-22 18:00:04 · 233 阅读 · 0 评论 -
HDU-4737-Caocao‘s Bridges
文章目录[HDU-4737-Caocao's Bridges](http://acm.hdu.edu.cn/showproblem.php?pid=4738)题目大意解题思路代码HDU-4737-Caocao’s Bridges题目大意给你n个点,m条边。让你选着删去一条边是的这个图不连通,每条边都有一个权值,让你找出最小的权值。解题思路利用tarjon缩点,然后找去桥,统计桥的最小权值的就可以了。但是这个题好几个坑点1,有重边,如果这个桥有重边,那么将不能选择2,如果本来就不是一个连通图,原创 2020-09-22 11:00:59 · 223 阅读 · 0 评论 -
HDU-4635-Strongly connected
文章目录[HDU-4635-Strongly connected](http://acm.hdu.edu.cn/showproblem.php?pid=4635)题目大意解题思路代码HDU-4635-Strongly connected题目大意给你n个点,m条边的简单有向图,问你最多能加多少边使得这个图不是强连通图(从任意一个节点可以到达其他任意的一个节点)。解题思路我们可以先用tarjan进行缩点,将能相互到达的一些点缩成一个,然后我们可以得到多个强连通图,我们可以枚举这些点,让其他所有的连通块原创 2020-09-21 21:26:31 · 122 阅读 · 0 评论 -
1063 - Ant Hills
文章目录[题目链接:1063 - Ant Hills](http://lightoj.com/volume_showproblem.php?problem=1063)题目大意解题思路代码题目链接:1063 - Ant Hills题目大意一个n各节点m条边的无向图。让你求有多少个割点。解题思路直接利用 tarjon 求割点。代码#include<bits/stdc++.h>using namespace std;#define ll long longconst int mx=原创 2020-09-08 11:45:07 · 180 阅读 · 1 评论 -
NC14394 手铐
文章目录[NC14394 手铐](https://ac.nowcoder.com/acm/problem/14394)题目大意解题思路NC14394 手铐题目大意给你 N 个顶点 M 条边,问你可以组成多少个手铐;解题思路由于本人过于太菜,就只会用tarjon来写,正解应该是书上的点分治我们先用tarjon缩完点之后构造出一幅新的无向无环图,然后再这棵树上找规律,设 f[u]为u这个节点后面连了多少个环,ans[x] 通过表示当前搜索范围中 x这个节点可以构造多少个手铐;至于转移方程感觉还是原创 2020-05-12 22:21:00 · 579 阅读 · 0 评论 -
图(牛客)
题目链接:图时间限制: C/C++ 1秒,其他语言2秒空间限制: C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述现在有一个N个点的有向图,每个点仅有一条出边你需要求出图中最长的简单路径包含点的数量(1≤N≤1,000,000)输入描述:第一行一个数字N接下来N行,每行一个正整数,第i+1行的数字表示第i个点出边终点的编号(...原创 2020-02-17 12:59:53 · 220 阅读 · 0 评论 -
Grass Cownoisseur
题目链接:Grass Cownoisseur时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K64bit IO Format: %lld题目描述In an effort to better manage the grazing patterns of his cows, Farmer John has installed one-way co...原创 2020-01-16 22:23:18 · 324 阅读 · 0 评论 -
受欢迎的牛(tarjan)
题目链接:受欢迎的牛题目描述每头奶牛都梦想成为牛棚里的明星。被所有奶牛喜欢的奶牛就是一头明星奶牛。所有奶牛都是自恋狂,每头奶牛总是喜欢自己的。奶牛之间的“喜欢”是可以传递的——如果A喜欢B,B喜欢C,那么A也喜欢C。牛栏里共有N 头奶牛,给定一些奶牛之间的爱慕关系,请你算出有多少头奶牛可以当明星。输入格式第一行:两个用空格分开的整数:N和M第二行到第M + 1行:每行两个用空格分开的整数...原创 2020-01-14 21:19:01 · 393 阅读 · 0 评论