루트 없는 트리가 주어진다. 이때, 트리의 루트를 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