Dolphins의 HelloWorld
[백준]Baekjoon11724(DFS)(대표적인 예시) 본문
#include <iostream> #include <vector> using namespace std; vector<int> arr[1001]; bool check[1001]; void DFS(int start) { check[start] = true; for (int i = 0; i < arr[start].size(); i++) { int next = arr[start][i]; if (check[next] == false) DFS(next); } } int main() { int N, M; int u, v; scanf("%d %d", &N, &M); while (M--) { scanf("%d %d", &u, &v); arr[u].push_back(v); arr[v].push_back(u); } int count = 0; for (int i = 1; i <= N; i++) { if (check[i] == false) { DFS(i); count++; } } printf("%d\n", count); }
'Algorithm > 알고리즘 개념' 카테고리의 다른 글
Knapsack Problem (0) | 2018.08.20 |
---|---|
Bipartite graph(이분그래프)(백준 1707) (0) | 2018.08.15 |
정렬 (c++ STL을 사용한)(Baekjoon 11650) (0) | 2018.08.11 |
병합정렬(Merge Sort) (0) | 2018.08.11 |
팩토리얼 0의 갯수 찾기, 콤비네이션 0의 갯수 찾기(Baekjoon 1676, 2004) (0) | 2018.08.11 |
Comments