diff options
| author | Gloria Mundi <gloria@gloria-mundi.eu> | 2024-02-27 23:04:21 +0100 |
|---|---|---|
| committer | Gloria Mundi <gloria@gloria-mundi.eu> | 2024-02-27 23:04:21 +0100 |
| commit | 4979378b4b22d1db9a972e7f576cdcb94d79e7e0 (patch) | |
| tree | 229bc2e32e6552d76769dc298213d699041f5c4b /graph | |
| parent | 496e4f909f4c6f4100ad3cef0a663b3f69b3b89f (diff) | |
golf binary lifting
Diffstat (limited to 'graph')
| -rw-r--r-- | graph/binary_lifting.cpp | 4 |
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; } |
