S E P H ' S

[Python] 네트워크 본문

Algorithm/Programmers

[Python] 네트워크

yoseph0310 2021. 8. 7. 14:28
 

코딩테스트 연습 - 네트워크

네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있

programmers.co.kr

from collections import deque

def solution(n, computers):
    answer = 0
    visited = [False] * n
    for i in range(n):
        if not visited[i]:
            bfs(i, computers, visited)
            answer += 1
    return answer

def bfs(start, computers, visited):
    q = deque([start])
    while q:
        cur = q.popleft()
        if not visited[cur]:
            visited[cur] = True
            for next in range(len(computers)):
                if next == cur or computers[cur][next] == 0:
                    continue
                elif not visited[next]:
                    q.append(next)

'Algorithm > Programmers' 카테고리의 다른 글

[Python] 여행 경로  (0) 2021.08.07
[Python] 단어 변환  (0) 2021.08.07
[Python] 땅따먹기  (0) 2021.07.31
[Python] 숫자의 표현  (0) 2021.07.31
[Python] 최댓값과 최솟값  (0) 2021.07.31