글 작성자: 망고좋아
반응형

11725, 트리의 부모 찾기

📁 문제 출처

 

11725번: 트리의 부모 찾기

루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오.

www.acmicpc.net

 

💡 생각

  • 노드 형태의 bfs 문제 풀이
  • parent 배열을 만들어줘서 노드의 부모 표시

 

🛠 나의 코드

from collections import deque
import sys
input = sys.stdin.readline

n = int(input())

graph = [[] for _ in range(n+1)]
parent = [0 for _ in range(n+1)]


def bfs(start):
    queue = deque()
    queue.append(start)

    while queue:
        v = queue.popleft()
        for i in graph[v]:
            if parent[i] == 0:
                parent[i] = v
                queue.append(i)


for i in range(n-1):
    a, b = map(int, input().split())
    graph[a].append(b)
    graph[b].append(a)

bfs(1)

for i in parent[2:]:
    print(i)
반응형