123456789101112131415161718192021222324252627282930313233343536373839 |
- #include <iostream>
- #include "disjoint_set.hpp"
- #define endl '\n'
- using namespace std;
- void print(DisjointSet *ds)
- {
- cout << ds->root(0) << " " << ds->size(0) << " " << ds->root(1) << " " << ds->size(1) << endl;
- }
- int main()
- {
- ios_base::sync_with_stdio(0);
- cin.tie(0);
- auto ds = disjoint_set()->with_undo()->init(2);
- print(ds);
- ds->merge(0, 1);
- print(ds);
- ds->undo();
- print(ds);
-
- ds = disjoint_set()->init(2);
- print(ds);
- ds->merge(0, 1);
- print(ds);
-
-
-
- return 0;
- }
|