commit 739416b040965ef61492f07c1d0196fcd850ab54
parent bb6a7fd447db8ebafe9df80097821cb0105907f7
Author: Sebastiano Tronto <sebastiano@tronto.net>
Date: Mon, 8 Dec 2025 18:21:56 +0100
Small optimization
Diffstat:
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/2025/08/a.py b/2025/08/a.py
@@ -7,7 +7,10 @@ class SetJoin:
self._parent = [i for i in range(n)]
def rep(self, i):
- return i if self._parent[i] == i else self.rep(self._parent[i])
+ if self._parent[i] != i:
+ self._parent[i] = self.rep(self._parent[i])
+ return self._parent[i]
+
def join(self, i, j):
self._parent[self.rep(i)] = self.rep(j)
diff --git a/2025/08/b.py b/2025/08/b.py
@@ -5,7 +5,9 @@ class SetJoin:
self._parent = [i for i in range(n)]
def rep(self, i):
- return i if self._parent[i] == i else self.rep(self._parent[i])
+ if self._parent[i] != i:
+ self._parent[i] = self.rep(self._parent[i])
+ return self._parent[i]
def join(self, i, j):
self._parent[self.rep(i)] = self.rep(j)