문제링크:https://www.acmicpc.net/problem/11725
다루는 주제: DFS
import sys
sys.setrecursionlimit(10**6)
N = int(sys.stdin.readline())
tree = [[] for _ in range(N + 1)]
parent = [0] * (N + 1)
for _ in range(N - 1): # 간선의 갯수 = 노드 개수 - 1
a, b = map(int, sys.stdin.readline().split())
tree[a].append(b)
tree[b].append(a)
def dfs(v):
for i in tree[v]:
if parent[i] == 0:
parent[i] = v
dfs(i)
dfs(1)
for j in range(2, len(parent)):
print(parent[j])
'Algorithm > 백준(파이썬)' 카테고리의 다른 글
백준 21606 파이썬(Python) 문제풀이 아침산책 (0) | 2023.04.25 |
---|---|
백준 1707 파이썬(Python) 문제풀이 이분그래프 (0) | 2023.04.24 |
백준 2178 파이썬(Python) 문제풀이 미로탐색 (0) | 2023.04.23 |
백준 2606 파이썬(Python) 문제풀이 바이러스 (0) | 2023.04.23 |
백준 5639 파이썬(Python) 문제풀이 이진 검색 트리 (0) | 2023.04.23 |