"maki和tree" "魔法师" 都是并查集来求的 有一棵树,树上每一个点有一个颜色,白色或者黑色,然后可以把一个黑色变成白色。求白色的最大连通块 把每一个黑色点看成并查集的根节点,然后与这个黑色点连通的白色点都是这个并查集里面的点 那么并查集最大值就是答案 ...
分类:
其他好文 时间:
2020-05-18 13:57:37
阅读次数:
56
并查集: 1.将两个集合合并。 2.询问两个元素是否在一个集合当中。 基本原理:每个集合用一颗树来表示。树根的编号就是整个集合的编号。每个节点存储他的父亲节点,p[x]表示x的父亲节点。 问题1:如何判断树根:if(p[x]==x); 问题2:如何求x的集合的编号:while(p[x]!=x) x= ...
分类:
其他好文 时间:
2020-05-17 15:56:54
阅读次数:
45
转自acwing tire int son[N][26], cnt[N], idx; // 0号点既是根节点,又是空节点 // son[][]存储树中每个节点的子节点 // cnt[]存储以每个节点结尾的单词数量 // 插入一个字符串 void insert(char *str) { int p = ...
分类:
其他好文 时间:
2020-05-17 13:34:32
阅读次数:
57
//并查集-都要给fa赋初值!!// /*递归版路径压缩*/ const int maxn=2e5+9; int fa[maxn]; int find(int x) { return fa[x]==x?x:fa[x]=find(fa[x]); } void merge(int x,int y) { ...
分类:
其他好文 时间:
2020-05-16 12:36:03
阅读次数:
47
"HDU 3038" 第一次接触带权并查集 ...
分类:
其他好文 时间:
2020-05-12 11:29:28
阅读次数:
53
Codeforces Round 395 div1 "contest链接" tags 、`费马小定理 树hash 换根 线段树 并查集` 码量细节:E C D A B 难度:C E D B A A. Timofey and a tree 题意:给一棵点染色树,求一个根节点,使得除了原树以外所有的子树 ...
分类:
其他好文 时间:
2020-05-11 15:47:23
阅读次数:
52
左偏树模板题。 只不过这里要加上并查集的路径压缩(因为要找堆顶),不然复杂度是错的。 因为一个人被杀了,他就没了,为了证明他没了,所以要把他的val设成-1。 #include <iostream> #include <cstdio> using namespace std; const int N ...
分类:
其他好文 时间:
2020-05-10 17:03:27
阅读次数:
55
"CSDN同步" "原题链接" 简要题意: 给定若干组关系,第 $i$ 组关系形如 “$x$ 号罪犯和 $y$ 号罪犯有 $z$ 的矛盾”。现在共有两个监狱,在同一个监狱即会产生矛盾。问最小矛盾值。 显然,考虑 并查集 维护。 先按 $z$ 从大到小排序,考虑一对对检验,不合法退出即可。 本题我们要 ...
分类:
其他好文 时间:
2020-05-10 15:01:46
阅读次数:
48
Oil Deposits Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 12461 Accepted Submission(s): 7245 ...
分类:
其他好文 时间:
2020-05-09 16:41:00
阅读次数:
60
题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出 orz。 输入格式 第一行包含两个整数 N,MN,M,表示该图共有 NN 个结点和 MM 条无向边。接下来 MM 行每行包含三个整数 X_i,Y_i,Z_iXi?,Yi?,Zi?,表示有一条长度为 Z_iZi? 的无向边连接结点 ...
分类:
其他好文 时间:
2020-05-09 01:34:51
阅读次数:
113