Programers : 네트워크 - C++

김정욱·2021년 3월 10일
0

Algorithm - 문제

목록 보기
150/249
post-thumbnail

네트워크

코드

#include <string>
#include <vector>
#include <queue>
using namespace std;
void DFS(int cur, vector<bool>& vis, vector<vector<int>>& computers, int n){
    vis[cur] = true;
    for(int i=0;i<n;i++)
    {
        if(!vis[i] and computers[cur][i]){
            DFS(i, vis, computers, n);
        }
    }
}
int solution(int n, vector<vector<int>> computers) {
    // 110
    // 110
    // 001
    int ans = 0;
    vector<bool> vis(n, false);
    for(int i=0;i<n;i++)
    {
        if(!vis[i]){
            ans++;
            DFS(i, vis, computers, n);
        }
    }
    return ans;
}
  • key point!
    : DFS하나의 점연결된 모든 점방문 체크하면서 네트워크 개수를 세야 한다!
profile
Developer & PhotoGrapher

0개의 댓글