공부기록/프로그래머스

[프로그래머스] 네트워크

메델 2023. 9. 24. 21:39
class Solution {
    static boolean[] visit;
    static int num;
    static int[][] comInfo;
    public int solution(int n, int[][] computers) {
        int answer = 0;
        visit = new boolean[n];
        num = n;
        comInfo = computers;
        
        for(int i=0; i< num; i++){
            if(!visit[i]){
                dfs(i);
                answer++;
            }
        }
        
        return answer;
    }
    
    static void dfs(int x){
        visit[x] = true;
        
        for(int i=0; i<num; i++){
            if(i!=x && !visit[i] && comInfo[x][i] == 1){
                dfs(i);
            }
        }
    }
}