并查集
Richard_for_OI
老年退役选手orz
展开
-
种类并查集 poj1182
种类并查集的核心思想就是拆点。比如本题食物链,我们把一个点拆为同类(self),捕食(eat),天敌(enemy)。我代码中的变量描述的很清楚,直接上代码:#include <cstdio> #define N 50010 int n, k, fa[3*N]; int getfa(int x) {return (fa[x] == x)?x:(fa[x] = getfa(fa[x]));...原创 2018-02-13 18:35:33 · 280 阅读 · 0 评论 -
bzoj1015
有向图的连通性用强连通,无向图的连通性用并查集,起码90%的题都可以这么做。 但是这题是不停的删边,并查集根本忍不了啊。 那就倒过来弄呗~一点一点加边存答案,再从头输出#include #include #define N 440000 #define M 220000 struct EDGE { int to, next; }edge[2*M]; bool flag[N]; int h原创 2017-12-10 14:08:12 · 193 阅读 · 0 评论 -
[Noi2015]程序自动分析
4195: [Noi2015]程序自动分析Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 2854 Solved: 1326[Submit][Status][Discuss]Description 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足。考虑一个约束满足问题的简化版本:假设x1,x2,x3,…代表程序中出现的变量,给定...原创 2018-05-26 11:16:44 · 345 阅读 · 0 评论