CS/Algorithm
[백준:2606] 바이러스 - JAVA
yujindonut
2021. 5. 2. 21:33
728x90
import java.util.*;
public class Main {
static int map[][];
static boolean visit[];
static int N, M;
static int virus;
public static void dfs(int v) {
visit[v] = true;
for(int i = 1; i <= N; i++) {
if(map[v][i] == 1 && !visit[i]) {
dfs(i);
virus++; //1번 컴퓨터는 세면 안됨 - 1번을 통해 감염된 것만
}
}
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
N = scan.nextInt();
M = scan.nextInt();
map = new int[N+1][N+1];
visit = new boolean[N+1];
for(int i = 0; i < M; i++) {
int x = scan.nextInt();
int y = scan.nextInt();
map[x][y] = map[y][x] = 1;
}
dfs(1);
System.out.println(virus);
scan.close();
}
}
728x90