https://programmers.co.kr/learn/courses/30/lessons/43162
adj_mat = [[]]
gn = 0
visited = []
def solution(n, computers):
global adj_mat, gn, visited
gn = n
adj_mat = computers
answer = 0
visited = [False] * n
for i in range(n):
if not visited[i]:
dfs(i)
answer += 1
return answer
def dfs(start):
visited[start] = True
for i in range(gn):
if not visited[i] and adj_mat[start][i]:
dfs(i)