공부기록/백준
[백준] 11725번 트리의 부모 찾기
메델
2024. 2. 3. 15:26
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
static ArrayList<Integer>[] graph;
static int N;
static boolean[] visited;
static int[] parents;
static void DFS(int index) {
for(int x: graph[index]) {
if(!visited[x]) {
visited[x] = true;
parents[x] = index;
DFS(x);
}
}
}
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
N = kb.nextInt();
graph = new ArrayList[N+1];
visited = new boolean[N+1];
parents = new int[N+1];
for(int i=0; i<N+1; i++) {
graph[i] = new ArrayList<>();
}
for(int i=0; i<N-1; i++) {
int a = kb.nextInt();
int b = kb.nextInt();
graph[a].add(b);
graph[b].add(a);
}
DFS(1);
StringBuilder sb = new StringBuilder();
for(int i=2; i<=N; i++) {
sb.append(parents[i]+"\n");
}
System.out.println(sb.toString());
}
}