문제
접근 방식
dfs를 사용하여 연결되지 않은 컴퓨터의 집합 수를 출력한다.
코드
class Solution {
static void dfs(int node, int n, int[][] computers) {
visited[node] = true;
for(int i=0;i<n;i++) {
if(!visited[i] && computers[node][i] == 1) {
dfs(i, n, computers);
}
}
}
static boolean visited[];
int solution(int n, int[][] computers) {
int answer = 0;
visited = new boolean[n];
for(int i=0;i<n;i++) {
if(!visited[i]) {
answer++;
dfs(i, n, computers);
}
}
return answer;
}
}