Union Find Template
class UnionFind(object):
def __init__(self,n):
self.parents = list(range(n))
self.count = n
def find(self,x):
if x != self.parents[x]:
self.parents[x] = self.find(self.parents[x])
return self.parents[x]
def union(self,x,y):
xSet = self.find(x)
ySet = self.find(y)
self.parents[ySet] = xSet
if xSet == ySet:
return False
self.count-=1
return TrueLast updated