이전에 C#으로 푼 방식 그대로 풀었다
https://school.programmers.co.kr/learn/courses/30/lessons/43162
#include <string>
#include <vector>
using namespace std;
void Find(const vector<vector<int>> computers, int start, vector<bool>& visited) {
visited[start] = true;
for (int i = 0; i < computers[start].size(); i++) {
if (computers[start][i] == 1 && !visited[i]) {
Find(computers, i, visited);
}
}
}
int solution(int n, vector<vector<int>> computers) {
int answer = 0;
vector<bool> visited(n, false);
for (int i = 0; i < n; i++) {
if (!visited[i]) {
answer++;
Find(computers, i, visited);
}
}
return answer;
}
728x90
반응형
'공부 > C++' 카테고리의 다른 글
[C++] 프로그래머스 타겟 넘버 (0) | 2025.05.21 |
---|---|
[C++] 프로그래머스 서버 증설 횟수 (0) | 2025.05.20 |
[C++] 프로그래머스 유연근무제 (0) | 2025.05.19 |
[C++] 프로그래머스 비밀 코드 해독 (0) | 2025.05.19 |
[C++] 프로그래머스 소수 찾기 (0) | 2025.05.02 |