[백준/BOJ] 백준 13023번 : ABCDE
2023. 10. 25. 21:02ㆍ알고리즘 문제풀이
https://www.acmicpc.net/problem/13023
어떤 사람으로부터 출발해서, dfs(깊이 우선 탐색)을 통해 총 5명(출발 사람 포함)의 사람에 방문할 수 있으면, 친구 조건을 만족하는 것으로 문제를 해결했다
코드
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int n, m;
vector<int> adj[2005];
int visited[2005];
int result = 0;
void dfs(int here, int cnt) {
visited[here] = 1;
if (cnt == 5) {
visited[here] = 0;
result = 1;
return;
}
for (int i = 0; i < adj[here].size(); i++) {
int there = adj[here][i];
if (visited[there] == 0) {
dfs(there, cnt + 1);
}
}
visited[here] = 0;
}
int main()
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
cin >> n >> m;
for (int i = 0; i < m; i++) {
int a, b;
cin >> a >> b;
adj[a].push_back(b);
adj[b].push_back(a);
}
for (int i = 0; i < n; i++) {
dfs(i, 1);
if (result == 1) {
break;
}
}
cout << result;
return 0;
}
'알고리즘 문제풀이' 카테고리의 다른 글
[백준/BOJ] 백준 14953번 : Game Map (0) | 2023.10.25 |
---|---|
[백준/BOJ] 백준 12002번 : Field Reduction (Silver) (0) | 2023.10.25 |
[백준/BOJ] 백준 16064번 : Coolest Ski Route (0) | 2023.10.25 |
[백준/BOJ] 백준 2616번 : 소형기관차 (0) | 2023.10.25 |
[백준/BOJ] 백준 23032번 : 서프라이즈~ (0) | 2023.10.25 |