We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 7ffd55d commit 486fd0eCopy full SHA for 486fd0e
library/dsu/dsu.hpp
@@ -3,11 +3,11 @@
3
struct DSU {
4
vi p;
5
DSU(int n): p(n, -1) {}
6
- int size(int x) { return -p[f(x)]; }
7
- int f(int x) { return p[x] < 0 ? x : p[x] = f(p[x]); }
8
- bool join(int a, int b) {
9
- if ((a = f(a)) == (b = f(b))) return 0;
10
- if (p[a] > p[b]) swap(a, b);
11
- return p[a] += p[b], p[b] = a, 1;
+ int size(int u) { return -p[f(u)]; }
+ int f(int u) { return p[u] < 0 ? u : p[u] = f(p[u]); }
+ bool join(int u, int v) {
+ if ((u = f(u)) == (v = f(v))) return 0;
+ if (p[u] > p[v]) swap(u, v);
+ return p[u] += p[v], p[v] = u, 1;
12
}
13
};
0 commit comments