From 6295673d6f620703597a7257825b01f17095bb50 Mon Sep 17 00:00:00 2001 From: KIMSJ Date: Wed, 3 Jul 2019 21:19:30 +0900 Subject: [PATCH] dfs --- KIMSUNGJAE/Network.java | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 KIMSUNGJAE/Network.java diff --git a/KIMSUNGJAE/Network.java b/KIMSUNGJAE/Network.java new file mode 100644 index 0000000..46fc6bd --- /dev/null +++ b/KIMSUNGJAE/Network.java @@ -0,0 +1,44 @@ +public class Network { + private static boolean[] visited; + private static int depth = 0; + public static void main (String[] args) { + int answer = 0; + int n; + int[][] computers; + + // example 1 + n = 3; + computers = new int[][]{ + {1,1,0}, + {1,1,1}, + {0,1,1} + }; + + visited = new boolean[n]; + + for(int i = 0 ; i < n ; i ++) { + depth = 0; + dfs(computers, i); + + if (depth > 0 ){ + answer++; + } + } + + System.out.println(answer); + } + + public static void dfs(int[][] map, int start) { + if (visited[start]) { + return; + } + depth++; + visited[start] = true; + + for (int i = 0 ; i < map.length ; i ++) { + if(map[start][i] == 1 && !visited[i]) { + dfs(map, i); + } + } + } +}