-문제: https://www.acmicpc.net/problem/13023

 

문제를 읽고 무슨 말을 하는지 잘 몰랐다 

그래서 에제4를 살펴보니 3-4-6 이렇게 있길래 친구가 연결되는 게 있으면 1을 출력하고 아니면 0을 출력하는 건가? 생각하고 다음과 같은 코드를 작성했다

25%에서 틀리길래 뭐가 문제인지 찾아봤는데 문제를 아예 잘못 이해하고 있었다 

abcde의 관계처럼 깊이가 4인 트리가 있는지 찾아보는 문제였다

그리고 이 문제에서는 노드가 0부터 시작하기 때문에 graph부터,visit, range에 들어가는 값 모두 n으로 설정해야한다  

-정답풀이: 

import sys

n,m=map(int,input().split())

visit=[0]*n
graph=[[] for _ in range(n)]
for _ in range(m):
    a,b=map(int,input().split())
    graph[b].append(a)
    graph[a].append(b)
    
def dfs(v,depth):
    visit[v]=1
    if depth ==4:
        print(1)
        exit()
    for i in graph[v]:
        if not visit[i]:
            dfs(i,depth+1)
            visit[i]=0
        
for i in range(n):    
    dfs(i,0)
    visit[i]=0
print(0)

-틀린풀이: 

 

+ Recent posts