Skip to content

Commit 665fb54

Browse files
committed
more fixes
1 parent ae2c457 commit 665fb54

File tree

5 files changed

+19
-19
lines changed

5 files changed

+19
-19
lines changed

library/data_structures_[l,r)/uncommon/permutation_tree.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#pragma once
2-
#include "linear_rmq.hpp"
2+
#include "../../data_structures_[l,r]/linear_rmq.hpp"
33
//! https://codeforces.com/blog/entry/78898
44
//! @code
55
//! auto [p, root, ch] = perm_tree(a);

library/dsu/range_parallel_dsu.hpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
#pragma once
2-
#include "../../../kactl/content/data-structures/UnionFind.h"
2+
#include "dsu.hpp"
33
//! Given l1,l2,len; joins (l1,l2), (l1+1,l2+1),
44
//! ..., (l1+len-1,l2+len-1)
55
//! `f` is called at most n-1 times
66
//! @time O(n*log(n)*\alpha(n) + q)
77
//! @space O(n log n)
88
struct rp_dsu {
9-
vector<UF> ufs;
10-
rp_dsu(int n): ufs(bit_width(unsigned(n)), UF(n)) {}
9+
vector<DSU> dsus;
10+
rp_dsu(int n): dsus(bit_width(unsigned(n)), DSU(n)) {}
1111
void join(int l1, int l2, int len, const auto& f) {
1212
if (len == 0) return;
1313
int lg = __lg(len);
@@ -17,13 +17,13 @@ struct rp_dsu {
1717
}
1818
void join_impl(int lvl, int u, int v, const auto& f) {
1919
if (lvl == 0) {
20-
u = ufs[0].find(u);
21-
v = ufs[0].find(v);
22-
if (!ufs[0].join(v, u)) return;
23-
int w = ufs[0].find(u);
20+
u = dsus[0].f(u);
21+
v = dsus[0].f(v);
22+
if (!dsus[0].join(v, u)) return;
23+
int w = dsus[0].f(u);
2424
return f(w, u ^ v ^ w);
2525
}
26-
if (!ufs[lvl].join(u, v)) return;
26+
if (!dsus[lvl].join(u, v)) return;
2727
join_impl(lvl - 1, u, v, f);
2828
join_impl(lvl - 1, u + (1 << (lvl - 1)),
2929
v + (1 << (lvl - 1)), f);
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
#pragma once
2-
#include "../../../kactl/content/data-structures/UnionFind.h"
2+
#include "dsu.hpp"
33
//! Given triplets (l1,l2,len); joins (l1,l2),
44
//! (l1+1,l2+1), ..., (l1+len-1,l2+len-1)
55
//! @time O((n + q) * \alpha(n))
66
//! @space O(n + q)
7-
UF get_rp_dsu(const vector<array<int, 3>>& rests, int n) {
7+
DSU get_rp_dsu(const vector<array<int, 3>>& rests, int n) {
88
vector<vector<pii>> rests_by_len(n + 1);
99
for (auto [l1, l2, len] : rests)
1010
rests_by_len[len].emplace_back(l1, l2);
11-
UF uf(n);
11+
DSU dsu(n);
1212
for (int len = n; len > 0; len--)
1313
for (auto [l1, l2] : rests_by_len[len])
14-
if (uf.join(l1, l2))
14+
if (dsu.join(l1, l2))
1515
rests_by_len[len - 1].emplace_back(l1 + 1, l2 + 1);
16-
return uf;
16+
return dsu;
1717
}

library/graphs/bcc_callback.hpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
//! @code
44
//! {
55
//! vector<vi> adj(n);
6-
//! UF uf(n);
6+
//! DSU dsu(n);
77
//! vector<bool> seen(n);
88
//! bcc(adj, [&](const vi& nodes) {
99
//! int count_edges = 0;
@@ -18,13 +18,13 @@
1818
//! // nodes[0] <=> nodes[1] is a bridge
1919
//! return;
2020
//! }
21-
//! for (int u : nodes) uf.join(u, nodes[0]);
21+
//! for (int u : nodes) dsu.join(u, nodes[0]);
2222
//! });
2323
//! vector<basic_string<int>> bridge_tree(n);
2424
//! rep (i, 0, n)
2525
//! for (int u : adj[i])
26-
//! if (!uf.sameSet(i, u))
27-
//! bridge_tree[uf.find(i)] += uf.find(u);
26+
//! if (dsu.f(i) != dsu.f(u))
27+
//! bridge_tree[dsu.f(i)] += dsu.f(u);
2828
//! }
2929
//!
3030
//! vector<basic_string<int>> adj(n);

tests/library_checker_aizu_tests/handmade_tests/seg_tree_find_small.test.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"https://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_1_A"
33
#include "../template.hpp"
44
#include "../../../library/contest/random.hpp"
5-
#include "../../../library/data_structures/lazy_seg_tree.hpp"
5+
#include "../../../library/data_structures_[l,r)/lazy_seg_tree.hpp"
66
int main() {
77
cin.tie(0)->sync_with_stdio(0);
88
for (int iters = 0; iters < 100; ++iters) {

0 commit comments

Comments
 (0)