본문 바로가기

CodingTest/Programmers

[ 프로그래머스 ] 네트워크

from collections import deque
def bfs(v, visited, computers):
    q = deque([v])
    visited[v] = 1
    while q:
        x = q.popleft()
        for i in range(len(computers[x])):
            if computers[x][i] == 1 and not visited[i]:
                q.append(i)
                visited[i] = 1
                
def solution(n, computers):
    answer = 0
    visited = [0] * n
    
    for v in range(n):
        if not visited[v]:
            bfs(v, visited, computers)
            answer += 1
            print(visited)
    return answer

 

우또비.. 또 BFS풀이.. 이번엔 DFS로 해볼까 했는데 못 구현해서 ㅎㅎㅎ...

하여간 20분 정도 안에 프린트디버깅과 함께 자력으로 구현해서 나름 뿌듯하게 패스합니다. : )