728x90
#include <string>
#include <vector>
using namespace std;
bool isVisited[200] = {false, };
void DFS(int cur, int n, vector<vector<int>> computers)
{
isVisited[cur] = true;
for(int i = 0; i < n; i++)
{
if(!isVisited[i] && computers[cur][i] == 1)
DFS(i, n, computers);
}
}
int solution(int n, vector<vector<int>> computers) {
int answer = 0;
for(int i = 0; i < n; i++)
{
if(!isVisited[i]){
DFS(i, n, computers);
answer++;
}
}
return answer;
}
가장
728x90
'알고리즘 공부(C++)' 카테고리의 다른 글
[C++]프로그래머스 배달 (다익스트라 알고리즘 이해) (0) | 2023.06.20 |
---|---|
BFS 이해 (0) | 2023.06.11 |
[C++]프로그래머스 소수 찾기 (next_permutation) (0) | 2023.06.06 |
[C++]프로그래머스 숫자 변환하기(BFS) (0) | 2023.06.04 |
프로그래머스 C++ 타겟 넘버 (DFS) (0) | 2023.05.30 |