class Solution {
int[] visited = new int[200];
public int solution(int n, int[][] computers) {
int answer = 0;
for(int i = 0; i < computers.length; i++) {
if(visited[i]==0) {
answer++;
dfs(computers, i);
}
}
return answer;
}
public void dfs(int[][] computers, int pos) {
visited[pos] = 1;
for (int i = 0; i < computers.length; i++) {
System.out.println(pos+","+i);
if (visited[i]==0 && computers[pos][i]==1) {
dfs(computers, i);
}
}
}
}
DFS로 풀었다.