🔗 네트워크
class Solution {
static boolean[] visited;
static int[][] computer;
static int answer=0;
public int solution(int n, int[][] computers) {
visited=new boolean[n];
computer=computers;
for(int i=0;i<n;i++){
if(!visited[i]){// 방문 안 했으면
dfs(i); // 순회 시작
answer++;
}
}
return answer;
}
private void dfs(int node){
visited[node]=true; // 방문 표시
int size=computer[node].length;
for(int i=0;i<size;i++){
int c=computer[node][i];
if(
!visited[i]&& // 방문 안 했고
c==1 // 연결 돼 있다면
){
visited[i]=true;
dfs(i);
}
}
}
}
'코딩테스트 > 문제풀이' 카테고리의 다른 글
[ 프로그래머스 ] #42579 : 베스트앨범 - JAVA (0) | 2025.04.29 |
---|---|
[ 프로그래머스 ] #42888 : 오픈채팅방 - JAVA (1) | 2025.04.28 |
[ LeetCode ] #739 : Daily Temperatures - JAVA (0) | 2025.04.25 |
[ 프로그래머스 ] #131127 : 할인 행사 - JAVA (0) | 2025.04.22 |
[ 프로그래머스 ] #42576 : 완주하지 못한 선수 - JAVA (0) | 2025.04.21 |