Pagini recente » Cod sursa (job #2764256) | Cod sursa (job #271816) | Cod sursa (job #1705539) | Cod sursa (job #3169175) | Cod sursa (job #1705158)
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
class Main {
public static void main(String[] args) throws FileNotFoundException, IOException {
BufferedReader in = new BufferedReader(new FileReader("dfs.in"));
String temp[] = in.readLine().split(" ");
int N = Integer.parseInt(temp[0]);
int M = Integer.parseInt(temp[1]);
List<List<Integer>> g = new ArrayList<>();
for (int i = 0; i <= N; i++) {
g.add(i, new ArrayList<Integer>());
}
for (int i = 0; i < M; i++) {
temp = in.readLine().split(" ");
int x = Integer.parseInt(temp[0]);
int y = Integer.parseInt(temp[1]);
g.get(x).add(y);
g.get(y).add(x);
}
vis = new int[N + 1];
int cnx = 0;
for (int i = 1; i <= N; i++) {
if (vis[i] == 0) {
cnx++;
dfs(i, g);
}
}
PrintWriter out = new PrintWriter("dfs.out");
System.out.println(cnx);
out.print(cnx);
in.close();
out.close();
}
static int[] vis;
static void dfs(int n, List<List<Integer>> g) {
vis[n] = 1;
for (int i = 0; i < g.get(n).size(); i++) {
int ngh = g.get(n).get(i);
if (vis[ngh] == 0) {
dfs(ngh, g);
}
}
}
}