시작이 반

[프로그래머스] 네트워크(python 파이썬) 본문

알고리즘/Programmers

[프로그래머스] 네트워크(python 파이썬)

G_Gi 2021. 3. 10. 18:26
SMALL

 

dfs, bfs를 사용하여 풀수있다.

 

dfs로 문제를 해결하였다.

dfs가 끝난이후 해당 node를 방문했는지 확인하고 그룹수를 증가시킨다.

 

visited = list()
def solution(n, computers):
    global visited
    visited = [False] * n
    
    answer = 0

    for i in range(n):
        if not visited[i]:
            dfs(n, computers, i)
            answer += 1
            
    return answer

def dfs(n, computers, start):
    global visited, count

    visited[start] = True
    for i in range(n):
        if computers[start][i] == 1 and not visited[i]:
            visited[i] = True
            dfs(n, computers, i)
LIST