네트워크
컴퓨터 간의 연결 여부를 파악해서 네트워크의 개수를 구하는 문제..
dfs나 bfs를 이용하여 컴퓨터들을 따라 탐색하면서 네트워크의 개수를 파악하면 되겠다.dfs와 bfs 이론 자체가 난이도가 높다고 평가되는건지
레벨3문제 치고는 dfs, bfs만 이해하고 있다면
간단하게 풀 수 있는 문제같다.방문 표시를 하면서 탐색하여 총 몇개의 네트워크로 구성되어있는지 구한다
나는 dfs를 사용했음
def solution(n, computers): answer = 0 com = [0] * n while 0 in com: stack = [com.index(0)] com[stack[0]] = 1 while stack: node = stack.pop() for j in range(n): if com[j] == 0 and computers[node][j] == 1: stack.append(j) com[j] = 1 answer += 1 return answer