summaryrefslogtreecommitdiff
path: root/graph/binary_lifting.cpp
diff options
context:
space:
mode:
authorGloria Mundi <gloria@gloria-mundi.eu>2024-02-27 23:04:21 +0100
committerGloria Mundi <gloria@gloria-mundi.eu>2024-02-27 23:04:21 +0100
commit4979378b4b22d1db9a972e7f576cdcb94d79e7e0 (patch)
tree229bc2e32e6552d76769dc298213d699041f5c4b /graph/binary_lifting.cpp
parent496e4f909f4c6f4100ad3cef0a663b3f69b3b89f (diff)
golf binary lifting
Diffstat (limited to 'graph/binary_lifting.cpp')
-rw-r--r--graph/binary_lifting.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/graph/binary_lifting.cpp b/graph/binary_lifting.cpp
index 9e0dfc3..0b8c218 100644
--- a/graph/binary_lifting.cpp
+++ b/graph/binary_lifting.cpp
@@ -20,8 +20,8 @@ struct Lift {
int lca(int u, int v) {
v = lift(v, dep[u]), u = lift(u, dep[v]);
while (u != v) {
- if (jmp[u] == jmp[v]) u = par[u], v = par[v];
- else u = jmp[u], v = jmp[v];
+ auto &a = jmp[u] == jmp[v] ? par : jmp;
+ u = a[u], v = a[v];
}
return u;
}