随笔分类 - 谜之tarjan
摘要:题目链接 "传送门" 思路 根据题目给定的边跑一边最大流,然后再在残留网络上跑tarjan。 对于每一条边有: 如果它是非满边,那么它一定不是最小割集里面的边; 如果c[u[i]] \not= c[v[i]],那么它可以是最小割集里面的边; 如果c[u[i]] \not= c[v[i]]
阅读全文
摘要:题目链接:http://poj.org/problem?id=3678 题目: 题意:给你a,b,c,op,op为逻辑运算符或、与、异或,使得a op b = c,让你判断这些运算符是否存在矛盾,不存在输出YES,存在输出NO。 思路:2-SAT问题。2-SAT问题一般都是每个节点有两种选择,并且在
阅读全文
摘要:题目链接:http://codeforces.com/contest/999/problem/E 题目: 题意:给你n个城市,m条单向边,问你需要加多少条边才能使得从首都s出发能到达任意一个城市。 思路:tarjan缩点,结果就是缩点新建的图中入度为0的点的数量。 代码实现如下:
阅读全文
摘要:题目链接:http://poj.org/problem?id=1236 题目: 题意:对于n个学校,对于一个系统传给某个学校,那么他会传给他得支援学校。从第二开始,每行给你多个数字,表示第i个学校可以支援这些学校,以0结尾。问你一个新软件至少要给多少个学校,如果任意传给某个学校都能传给其他学校需要建
阅读全文
摘要:题目链接:http://poj.org/problem?id=3694 题目: 题意:给你一个n个点m条边的无向连通图,进行q次操作,每次操作在u和v之间加一条边,问每次操作之后“桥”的数量。 思路:先tarjan预处理出初始状态“桥”的数量cnt,并进行标记,对于每次操作,进行lca查询,将u和v
阅读全文