fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. const long long MaxN = 1e5 +5;
  4. struct DSU
  5. {
  6. long long lab[MaxN];
  7. void init()
  8. {
  9. memset(lab, -1, sizeof(lab));
  10. }
  11. long long get_root(long long u)
  12. {
  13. if(lab[u]<0) return u;
  14. return lab[u]=get_root(lab[u]);
  15. }
  16. bool check(long long u, long long v)
  17. {
  18. return get_root(u)==get_root(v);
  19. }
  20. void unite(long long u, long long v)
  21. {
  22. long long x = get_root(u), y = get_root(v);
  23. if(x==y) return;
  24. if(lab[x]>lab[y]) swap(x,y); // > hơn do lab[root] luôn âm
  25. lab[x]+=lab[y];
  26. lab[y]=x;
  27. return ;
  28. }
  29. } dsu;
  30. void input()
  31. {
  32. }
  33. void solve()
  34. {
  35. dsu.init();
  36. }
  37. int main()
  38. {
  39. ios_base::sync_with_stdio(0);
  40. cin.tie(0);
  41. input();
  42. solve();
  43. }
  44.  
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
Standard output is empty