
并查集
菜菜魁
fighting!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
并查集模板
并查集模板: 1.参数: int fa[maxn]; //记录父结点 int rnk[maxn]; //优化查询速度 int n, m; //节点数,边数 2.初始化: void init() { for(int i = 0; i <= n; i++) { fa[i] = i; rnk[i] = 0; } } ...原创 2018-07-26 19:07:09 · 133 阅读 · 0 评论 -
hdu 3038 How Many Answers Are Wrong(向量偏移扩展并查集)
文章参考借鉴于https://www.cnblogs.com/liyinggang/p/5327055.html,到处都是大佬,我还应该多学习。 本题的意思是给你一堆区间,每个区间的和为v,问你有多少条件发生了冲突。 问题主要在于怎么更新并查集,因为各种路径关系很复杂,不能单纯的连接。这里用到了向量偏移思想。 共分两种情况: 第一种,a的父结点和b的父结点不同,我们要连接两个父结点。 盗...原创 2018-07-28 10:07:11 · 196 阅读 · 0 评论 -
poj1182 食物链(路径压缩(向量偏移)扩展并查集)
和之前那个模板道理是一样的:https://blog.youkuaiyun.com/qq_38367681/article/details/81257566; 直接上代码: #include<cstdio> #include<cstring> using namespace std; const int MAXN=50000+100; int pa[MAXN]; int v[M...原创 2018-07-28 11:26:14 · 167 阅读 · 0 评论