[알고리즘] 백준 11725 트리의 부모 찾기 파이썬

CHOI IN HO·2024년 1월 30일
0

코딩테스트

목록 보기
47/74

풀이

기존에 풀던 방식으로 bfs를 사용하면서 본인의 나왔던 부모루트를 저장하면서 풀어주면 된다.

from collections import deque
import sys
n = int(input())
lst = [[] for _ in range(n+1)]

for i in range(n-1):
    a, b  = map(int, sys.stdin.readline().split())
    lst[a].append(b)
    lst[b].append(a)
# print(lst)
visited = [0] * (n+1)
visited[1] = 1
def bfs(start):
    q = deque()
    q.append(start)
    while q:
        current = q.popleft()
        for i in lst[current]:
            if visited[i] == 0:
                visited[i] = current
                q.append(i)
bfs(1)
for i in range(2, n+1):
    print(visited[i])
profile
개발자기 되기 위해선 무엇이든!

0개의 댓글