11725 트리의 부모 찾기

정민용·2023년 2월 6일

백준

목록 보기
14/286

문제

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

import sys

sys.setrecursionlimit(1000000000)

n = int(input())
graph = []
for _ in range(n):
  graph.append([])

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


def dfs(v, visited, arr):
  if visited[v] == False:
    visited[v] = True
    for i in graph[v]:
      if visited[i] == False:
        arr[i] = v
      dfs(i, visited, arr)


visited = [False] * n
arr = [-1] * n
dfs(0, visited, arr)

for i in arr[1:]:
  print(i + 1)

런타임 에러 (RecursionError) : sys.setrecursionlimit(1000000000)

메모리 초과 : pypy3 -> Python 3

백준 11725 트리의 부모 찾기

0개의 댓글