[백준] 11724. 연결 요소의 개수

고재욱·2021년 10월 12일

Baekjoon

목록 보기
34/35

❓ 문제 ❓
연결 요소의 개수

💯 문제 풀이 💯
DFS로 연결된 노드를 돌고 들린 노드는 돌지 않는다.

#include <iostream>
#include <vector>
using namespace std;
vector<int> arr[1001];
bool visit[1001];

void dfs(int idx) {
	for (int i = 0; i < arr[idx].size(); i++) {
		if (!visit[arr[idx][i]]) {
			visit[arr[idx][i]] = true;
			dfs(arr[idx][i]);
		}
	}
}

int main() {
	int n, m; cin >> n >> m;
	for (int i = 0; i < m; i++) {
		int a, b; cin >> a >> b;
		arr[a].push_back(b);
		arr[b].push_back(a);
	}
	int cnt = 0;
	for (int i = 1; i <= n; i++) {
		if (!visit[i]) {
			cnt++;
			dfs(i);
		}
	}
	cout << cnt;
}

0개의 댓글