https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14geLqABQCFAYD&
#문제 간단 정리
간단한 dfs 문제
#문제 해결 방법
#전체 코드
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>
#include <map>
#include <string>
using namespace std;
bool flag;
void dfs(vector<vector<int>> &vec, bool visited[],int idx) {
if (idx == 99) {
flag = true;
return;
}
for (int i = 0; i < vec[idx].size(); i++) {
int nextIdx = vec[idx][i];
if (!visited[nextIdx]) {
visited[nextIdx] = true;
dfs(vec, visited, nextIdx);
visited[nextIdx] = false;
}
}
return;
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
for (int tc = 1; tc <= 10; tc++) {
int n, length;
cin >> n >> length;
vector<vector<int>> nodes(100,vector<int>(0));
bool visited[100] = { false };
for (int i = 0; i < length; i++) {
int a, b;
cin >> a >> b;
nodes[a].push_back(b);
}
flag = false;
dfs(nodes, visited, 0);
cout << '#' << tc << ' ' << (flag ? 1 : 0) << '\n';
}
return 0;
}
'[SW Expert Academy]' 카테고리의 다른 글
SW Expert Academy 1267. [S/W 문제해결 응용] 10일차 - 작업순서[C++] (0) | 2024.05.15 |
---|---|
SW Expert Academy 1224. [S/W 문제해결 기본] 6일차 - 계산기3[C++] (0) | 2024.04.17 |
SW Expert Academy 1218.[S/W 문제해결 기본] 4일차 - 괄호 짝짓기[C++] (0) | 2024.04.05 |
SW Expert Academy [S/W 문제해결 기본] 3일차 - 최적 경로 [C++] (0) | 2024.04.03 |
SW Expert Academy [S/W 문제해결 기본] 1일차 - View [C++] (0) | 2024.03.17 |