Skip to content

Commit 92746ef

Browse files
committed
Adding solution to challenge '547. Number of Provinces' (medium).
1 parent f0ef403 commit 92746ef

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
class Solution:
2+
def findCircleNum(self, isConnected: List[List[int]]) -> int:
3+
n = len(isConnected)
4+
parent = [i for i in range(n)]
5+
def find(a):
6+
if parent[a] != a:
7+
parent[a] = find(parent[a])
8+
return parent[a]
9+
def union(a, b):
10+
pa, pb = find(a), find(b)
11+
if pa == pb:
12+
return 0
13+
if pa < pb:
14+
parent[pb] = pa
15+
else:
16+
parent[pa] = pb
17+
18+
for i in range(n):
19+
for j, edge in enumerate(isConnected[i]):
20+
if edge != 1:
21+
continue
22+
union(i, j)
23+
return len(set([find(i) for i in range(n)]))

0 commit comments

Comments
 (0)