기술 블로그

네트워크 본문

알고리즘 문제/Programmers

네트워크

parkit 2019. 5. 23. 22:35
728x90
반응형

https://programmers.co.kr/learn/courses/30/lessons/43162




기초적인 DFS 문제이다.





1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <bits/stdc++.h>
 
using namespace std;
 
vector<int> v[201];
 
bool visit[201= { false, };
 
void dfs(int start)
{
    visit[start] = true;
 
    for (auto i : v[start])
        if (!visit[i])
            dfs(i);
}
 
int solution(int n, vector<vector<int>> computers) 
{
    int answer = 0;
 
    for (int i = 0; i < computers.size(); i++)
        for (int j = 0; j < computers.at(i).size(); j++)
        {
            if (i == j || computers.at(i).at(j) == 0continue;
            v[i].push_back(j);
        }
 
 
    for (int i = 0; i < n; i++)
        if (!visit[i])
        {
            dfs(i);
            ++answer;
        }
 
    return answer;
}
cs



728x90
반응형

'알고리즘 문제 > Programmers' 카테고리의 다른 글

오픈채팅방  (0) 2019.08.23
등굣길  (0) 2019.05.26
방문 길이  (0) 2019.05.20
스킬트리  (0) 2019.05.20
가장 먼 노드  (0) 2019.05.11