[백준 DFS] ABCDE(python)

이진규·2022년 8월 30일
1

백준(PYTHON)

목록 보기
88/115

문제

https://www.acmicpc.net/problem/13023

나의 코드

"""

"""

from sys import stdin
input = stdin.readline

n, m = map(int, input().split())
graph = [ [] for _ in range(n) ]
visited = [False] * n

for _ in range(m):
    a, b = map(int, input().split())
    graph[a].append(b)
    graph[b].append(a)


def dfs(idx, dep): # 깊이가 4, 즉 문제에서 주어진 ABCDE가 모두 연결되면 된다.

    if dep == 4:
        print(1)
        exit(0)

    for i in graph[idx]:
        if not visited[i]:
            visited[i] = True
            dfs(i, dep+1)
            visited[i] = False

for idx in range(n): # 0번부터 차례대로 dfs 탐색
    visited[idx] = True
    dfs(idx, 0)
    visited[idx] = False

print(0)

    

설명

DFS를 활용한 문제

참고 자료

https://grini25.tistory.com/110

profile
항상 궁금해하고 공부하고 기록하자.

0개의 댓글