https://school.programmers.co.kr/learn/courses/30/lessons/43162
class Solution {
static boolean[] visited;
static int len=0;
static int answer = 0;
public void dfs(int start ,int[][] computers){
for(int i=0; i<len; i++){
if(visited[i] == false && computers[start][i] == 1){
visited[i]=true;
dfs(i, computers);
}
}
}
public int solution(int n, int[][] computers) {
len = n;
visited = new boolean[n];
for(int i=0; i<n; i++){
if(visited[i] == false){
visited[i]=true;
dfs(i, computers);
answer++;
}
}
return answer;
}
}
'코테풀이' 카테고리의 다른 글
[프로그래머스] 뒤에 있는 큰 수 찾기 java (LEVEL2) (0) | 2023.05.11 |
---|---|
[프로그래머스] 연속 부분 수열 합의 개수 java (LEVEL2) (0) | 2023.05.11 |
[프로그래머스] 게임 맵 최단거리 java (LEVEL2) (0) | 2023.04.30 |
[프로그래머스] 피로도 java (LEVEL2) (0) | 2023.04.30 |
[프로그래머스] 전력망을 둘로 나누기 java (LEVEL2) (0) | 2023.04.30 |