Study & Project ✏️/알고리즘 📋

백준[Python] 13023.ABCDE - 파이썬

JM 2022. 11. 16. 00:48
반응형

📖 문제

📃 코드

import sys
sys.setrecursionlimit(10**6)
input = sys.stdin.readline

N, M = map(int, input().split())

relation = [[] for i in range(N)]
visited = [False] * (N+1)
ans = False

for i in range(M):
    a, b = map(int, input().split())
    relation[a].append(b)
    relation[b].append(a)


def dfs(idx, depth):
    global ans
    visited[idx] = True
    # 1. 종료조건
    # case A-B-C-D-E 같은 친구 관계가 있는지 검사
    if depth == 4:
        ans = True
        return
    # 2. 수행문
    for nx in relation[idx]:
        if visited[nx] == False:
            dfs(nx, depth+1)
            visited[nx] = False


for i in range(N):
    dfs(i, 0)
    visited[i] = False
    if ans:
        break

print(1 if ans else 0)

 

🔗 링크

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

 

13023번: ABCDE

문제의 조건에 맞는 A, B, C, D, E가 존재하면 1을 없으면 0을 출력한다.

www.acmicpc.net